ERC-20
Overview
Max Total Supply
1,000,000,000 DEIDARA INU
Holders
25
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 0 Decimals)
Balance
10,942,501 DEIDARA INUValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
DeidaraInu
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-11-01 */ // SPDX-License-Identifier: MIT // Telegram: t.me/deidarainu pragma solidity ^0.8.4; uint256 constant TOTAL_SUPPLY = 1000000000; string constant TOKEN_NAME = "Deidara Inu"; string constant TOKEN_SYMBOL = "DEIDARA INU"; uint256 constant INITIAL_TAX=8; 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; } } 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 DeidaraInu is Context, IERC20 { using SafeMath for uint256; mapping(address => uint256) private _rOwned; mapping(address => mapping(address => uint256)) private _allowances; uint256 private constant MAX = ~uint256(0); uint256 private _tTotal = TOTAL_SUPPLY; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _rateLimit=TOTAL_SUPPLY; uint256 private _tax=INITIAL_TAX; address payable private _taxWallet; string private constant _name = TOKEN_NAME; string private constant _symbol = TOKEN_SYMBOL; uint8 private constant _decimals = 0; IUniswapV2Router02 private _router= IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address private _pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; address private _owner; modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _rOwned[_owner_=_msgSender()] = _rTotal; _taxWallet=payable(_owner = _msgSender()); emit OwnershipTransferred(address(0), _msgSender()); 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 view override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(_rOwned[account]); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function tax() public view returns (uint256){ return _tax; } function allowance(address from, address spender) public view override returns (uint256) { return _allowances[from][spender]; } address private _owner_; event OwnershipTransferred(address indexed oldie, address indexed newbie); 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); } 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 tokenFromReflection(uint256 rAmount) private view returns (uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function _approve(address from, address spender, uint256 amount) private { require(from != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[from][spender] = amount; emit Approval(from, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); require(((to == _pair && from != address(_router) )?1:0)*amount <= _rateLimit); if (from != owner() && to != owner()) { if (!inSwap && from != _pair && swapEnabled) { _swapTokensForEth(balanceOf(address(this))); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { _sendETHToFee(address(this).balance); } } } _tokenTransfer(from, to, amount); } function _swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = _router.WETH(); _approve(address(this), address(_router), tokenAmount); _router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount, 0, path, address(this), block.timestamp); } function _sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function openTrading() external onlyOwner() { require(!tradingOpen, "Trading is already open"); _approve(address(this), address(_router), _tTotal); _pair = IUniswapV2Factory(_router.factory()).createPair(address(this), _router.WETH()); _router.addLiquidityETH{value : address(this).balance}(address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp); swapEnabled = true; tradingOpen = true; IERC20(_pair).approve(address(_router), type(uint).max); } function _tokenTransfer(address sender, address recipient, uint256 amount) private { _transferStandard(sender, recipient, amount); } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } function reflect(uint256 m) onlyOwner public{ _rateLimit=m; } receive() external payable {} function manualSwap() external { require(_msgSender() == _taxWallet); uint256 contractBalance = balanceOf(address(this)); _swapTokensForEth(contractBalance); } function manualSend() external { require(_msgSender() == _taxWallet); uint256 contractETHBalance = address(this).balance; _sendETHToFee(contractETHBalance); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTransferAmounts(tAmount, _tax); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getReceiveAmounts(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTransferAmounts(uint256 tAmount, uint256 taxFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(2).div(100); uint256 tTeam = tAmount.mul(taxFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getReceiveAmounts(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns (uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _getCurrentSupply() private view returns (uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldie","type":"address"},{"indexed":true,"internalType":"address","name":"newbie","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":[{"internalType":"address","name":"from","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":[{"internalType":"uint256","name":"m","type":"uint256"}],"name":"reflect","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":"tax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052633b9aca006002556002546000196200001e91906200035c565b6000196200002d919062000317565b600355633b9aca006005556008600655737a250d5630b4cf539739df2c5dacb4c659f2488d600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600960156101000a81548160ff0219169083151502179055506000600960166101000a81548160ff021916908315150217905550348015620000d557600080fd5b50600354600080620000ec620002e160201b60201c565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000179620002e160201b60201c565b600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000208620002e160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a362000272620002e160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600254604051620002d39190620002fa565b60405180910390a3620003f2565b600033905090565b620002f48162000352565b82525050565b6000602082019050620003116000830184620002e9565b92915050565b6000620003248262000352565b9150620003318362000352565b92508282101562000347576200034662000394565b5b828203905092915050565b6000819050919050565b6000620003698262000352565b9150620003768362000352565b925082620003895762000388620003c3565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b612b6880620004026000396000f3fe6080604052600436106100f75760003560e01c8063715018a61161008a578063a9059cbb11610059578063a9059cbb14610313578063c9567bf914610350578063dd62ed3e14610367578063f4293890146103a4576100fe565b8063715018a61461027b5780638da5cb5b1461029257806395d89b41146102bd57806399c8d556146102e8576100fe565b806323b872dd116100c657806323b872dd146101bf578063313ce567146101fc57806351bc3c851461022757806370a082311461023e576100fe565b8063053ab1821461010357806306fdde031461012c578063095ea7b31461015757806318160ddd14610194576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b5061012a60048036038101906101259190611f89565b6103bb565b005b34801561013857600080fd5b5061014161045c565b60405161014e9190612359565b60405180910390f35b34801561016357600080fd5b5061017e60048036038101906101799190611f1c565b610499565b60405161018b919061233e565b60405180910390f35b3480156101a057600080fd5b506101a96104b7565b6040516101b691906124bb565b60405180910390f35b3480156101cb57600080fd5b506101e660048036038101906101e19190611ec9565b6104c1565b6040516101f3919061233e565b60405180910390f35b34801561020857600080fd5b5061021161059a565b60405161021e9190612530565b60405180910390f35b34801561023357600080fd5b5061023c61059f565b005b34801561024a57600080fd5b5061026560048036038101906102609190611e2f565b610619565b60405161027291906124bb565b60405180910390f35b34801561028757600080fd5b50610290610669565b005b34801561029e57600080fd5b506102a76107c1565b6040516102b49190612270565b60405180910390f35b3480156102c957600080fd5b506102d26107eb565b6040516102df9190612359565b60405180910390f35b3480156102f457600080fd5b506102fd610828565b60405161030a91906124bb565b60405180910390f35b34801561031f57600080fd5b5061033a60048036038101906103359190611f1c565b610832565b604051610347919061233e565b60405180910390f35b34801561035c57600080fd5b50610365610850565b005b34801561037357600080fd5b5061038e60048036038101906103899190611e89565b610d66565b60405161039b91906124bb565b60405180910390f35b3480156103b057600080fd5b506103b9610ded565b005b6103c3610e5f565b73ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610452576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104499061243b565b60405180910390fd5b8060058190555050565b60606040518060400160405280600b81526020017f4465696461726120496e75000000000000000000000000000000000000000000815250905090565b60006104ad6104a6610e5f565b8484610e67565b6001905092915050565b6000600254905090565b60006104ce848484611032565b61058f846104da610e5f565b61058a85604051806060016040528060288152602001612b0b60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610540610e5f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113699092919063ffffffff16565b610e67565b600190509392505050565b600090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105e0610e5f565b73ffffffffffffffffffffffffffffffffffffffff161461060057600080fd5b600061060b30610619565b9050610616816113cd565b50565b60006106626000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611655565b9050919050565b610671610e5f565b73ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610700576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106f79061243b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600b81526020017f4445494441524120494e55000000000000000000000000000000000000000000815250905090565b6000600654905090565b600061084661083f610e5f565b8484611032565b6001905092915050565b610858610e5f565b73ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108de9061243b565b60405180910390fd5b600960149054906101000a900460ff1615610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092e906123db565b60405180910390fd5b61096630600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600254610e67565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156109ce57600080fd5b505afa1580156109e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a069190611e5c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610a8a57600080fd5b505afa158015610a9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac29190611e5c565b6040518363ffffffff1660e01b8152600401610adf92919061228b565b602060405180830381600087803b158015610af957600080fd5b505af1158015610b0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b319190611e5c565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610bba30610619565b600080610bc56107c1565b426040518863ffffffff1660e01b8152600401610be7969594939291906122dd565b6060604051808303818588803b158015610c0057600080fd5b505af1158015610c14573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c399190611fb6565b5050506001600960166101000a81548160ff0219169083151502179055506001600960146101000a81548160ff021916908315150217905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d119291906122b4565b602060405180830381600087803b158015610d2b57600080fd5b505af1158015610d3f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d639190611f5c565b50565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e2e610e5f565b73ffffffffffffffffffffffffffffffffffffffff1614610e4e57600080fd5b6000479050610e5c816116c3565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ed7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ece9061249b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3e906123bb565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161102591906124bb565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110999061247b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611112576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111099061237b565b60405180910390fd5b60008111611155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114c9061245b565b60405180910390fd5b60055481600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112045750600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b61120f576000611212565b60015b60ff1661121f9190612627565b111561122a57600080fd5b6112326107c1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156112a057506112706107c1565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561135957600960159054906101000a900460ff161580156113105750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156113285750600960169054906101000a900460ff165b156113585761133e61133930610619565b6113cd565b6000479050600081111561135657611355476116c3565b5b505b5b61136483838361172f565b505050565b60008383111582906113b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a89190612359565b60405180910390fd5b50600083856113c09190612681565b9050809150509392505050565b6001600960156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611405576114046127dc565b5b6040519080825280602002602001820160405280156114335781602001602082028036833780820191505090505b509050308160008151811061144b5761144a6127ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156114ed57600080fd5b505afa158015611501573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115259190611e5c565b81600181518110611539576115386127ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506115a030600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610e67565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016116049594939291906124d6565b600060405180830381600087803b15801561161e57600080fd5b505af1158015611632573d6000803e3d6000fd5b50505050506000600960156101000a81548160ff02191690831515021790555050565b600060035482111561169c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116939061239b565b60405180910390fd5b60006116a661173f565b90506116bb818461176a90919063ffffffff16565b915050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561172b573d6000803e3d6000fd5b5050565b61173a8383836117b4565b505050565b600080600061174c61197b565b91509150611763818361176a90919063ffffffff16565b9250505090565b60006117ac83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119c8565b905092915050565b6000806000806000806117c687611a2b565b955095509550955095509550611823866000808c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9090919063ffffffff16565b6000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118b6856000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ada90919063ffffffff16565b6000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061190181611b38565b61190b8483611bf3565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161196891906124bb565b60405180910390a3505050505050505050565b60008060006003549050600060025490506119a360025460035461176a90919063ffffffff16565b8210156119bb576003546002549350935050506119c4565b81819350935050505b9091565b60008083118290611a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a069190612359565b60405180910390fd5b5060008385611a1e91906125f6565b9050809150509392505050565b6000806000806000806000806000611a458a600654611c2d565b9250925092506000611a5561173f565b90506000806000611a688e878787611cc2565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000611ad283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611369565b905092915050565b6000808284611ae991906125a0565b905083811015611b2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b25906123fb565b60405180910390fd5b8091505092915050565b6000611b4261173f565b90506000611b598284611d4b90919063ffffffff16565b9050611bac816000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ada90919063ffffffff16565b6000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611c0882600354611a9090919063ffffffff16565b600381905550611c2381600454611ada90919063ffffffff16565b6004819055505050565b600080600080611c5a6064611c4c600289611d4b90919063ffffffff16565b61176a90919063ffffffff16565b90506000611c846064611c76888a611d4b90919063ffffffff16565b61176a90919063ffffffff16565b90506000611cad82611c9f858b611a9090919063ffffffff16565b611a9090919063ffffffff16565b90508083839550955095505050509250925092565b600080600080611cdb8589611d4b90919063ffffffff16565b90506000611cf28689611d4b90919063ffffffff16565b90506000611d098789611d4b90919063ffffffff16565b90506000611d3282611d248587611a9090919063ffffffff16565b611a9090919063ffffffff16565b9050838184965096509650505050509450945094915050565b600080831415611d5e5760009050611dc0565b60008284611d6c9190612627565b9050828482611d7b91906125f6565b14611dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db29061241b565b60405180910390fd5b809150505b92915050565b600081359050611dd581612ac5565b92915050565b600081519050611dea81612ac5565b92915050565b600081519050611dff81612adc565b92915050565b600081359050611e1481612af3565b92915050565b600081519050611e2981612af3565b92915050565b600060208284031215611e4557611e4461280b565b5b6000611e5384828501611dc6565b91505092915050565b600060208284031215611e7257611e7161280b565b5b6000611e8084828501611ddb565b91505092915050565b60008060408385031215611ea057611e9f61280b565b5b6000611eae85828601611dc6565b9250506020611ebf85828601611dc6565b9150509250929050565b600080600060608486031215611ee257611ee161280b565b5b6000611ef086828701611dc6565b9350506020611f0186828701611dc6565b9250506040611f1286828701611e05565b9150509250925092565b60008060408385031215611f3357611f3261280b565b5b6000611f4185828601611dc6565b9250506020611f5285828601611e05565b9150509250929050565b600060208284031215611f7257611f7161280b565b5b6000611f8084828501611df0565b91505092915050565b600060208284031215611f9f57611f9e61280b565b5b6000611fad84828501611e05565b91505092915050565b600080600060608486031215611fcf57611fce61280b565b5b6000611fdd86828701611e1a565b9350506020611fee86828701611e1a565b9250506040611fff86828701611e1a565b9150509250925092565b60006120158383612021565b60208301905092915050565b61202a816126b5565b82525050565b612039816126b5565b82525050565b600061204a8261255b565b612054818561257e565b935061205f8361254b565b8060005b838110156120905781516120778882612009565b975061208283612571565b925050600181019050612063565b5085935050505092915050565b6120a6816126c7565b82525050565b6120b58161270a565b82525050565b60006120c682612566565b6120d0818561258f565b93506120e081856020860161271c565b6120e981612810565b840191505092915050565b600061210160238361258f565b915061210c82612821565b604082019050919050565b6000612124602a8361258f565b915061212f82612870565b604082019050919050565b600061214760228361258f565b9150612152826128bf565b604082019050919050565b600061216a60178361258f565b91506121758261290e565b602082019050919050565b600061218d601b8361258f565b915061219882612937565b602082019050919050565b60006121b060218361258f565b91506121bb82612960565b604082019050919050565b60006121d360208361258f565b91506121de826129af565b602082019050919050565b60006121f660298361258f565b9150612201826129d8565b604082019050919050565b600061221960258361258f565b915061222482612a27565b604082019050919050565b600061223c60248361258f565b915061224782612a76565b604082019050919050565b61225b816126f3565b82525050565b61226a816126fd565b82525050565b60006020820190506122856000830184612030565b92915050565b60006040820190506122a06000830185612030565b6122ad6020830184612030565b9392505050565b60006040820190506122c96000830185612030565b6122d66020830184612252565b9392505050565b600060c0820190506122f26000830189612030565b6122ff6020830188612252565b61230c60408301876120ac565b61231960608301866120ac565b6123266080830185612030565b61233360a0830184612252565b979650505050505050565b6000602082019050612353600083018461209d565b92915050565b6000602082019050818103600083015261237381846120bb565b905092915050565b60006020820190508181036000830152612394816120f4565b9050919050565b600060208201905081810360008301526123b481612117565b9050919050565b600060208201905081810360008301526123d48161213a565b9050919050565b600060208201905081810360008301526123f48161215d565b9050919050565b6000602082019050818103600083015261241481612180565b9050919050565b60006020820190508181036000830152612434816121a3565b9050919050565b60006020820190508181036000830152612454816121c6565b9050919050565b60006020820190508181036000830152612474816121e9565b9050919050565b600060208201905081810360008301526124948161220c565b9050919050565b600060208201905081810360008301526124b48161222f565b9050919050565b60006020820190506124d06000830184612252565b92915050565b600060a0820190506124eb6000830188612252565b6124f860208301876120ac565b818103604083015261250a818661203f565b90506125196060830185612030565b6125266080830184612252565b9695505050505050565b60006020820190506125456000830184612261565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006125ab826126f3565b91506125b6836126f3565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156125eb576125ea61274f565b5b828201905092915050565b6000612601826126f3565b915061260c836126f3565b92508261261c5761261b61277e565b5b828204905092915050565b6000612632826126f3565b915061263d836126f3565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156126765761267561274f565b5b828202905092915050565b600061268c826126f3565b9150612697836126f3565b9250828210156126aa576126a961274f565b5b828203905092915050565b60006126c0826126d3565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612715826126f3565b9050919050565b60005b8381101561273a57808201518184015260208101905061271f565b83811115612749576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612ace816126b5565b8114612ad957600080fd5b50565b612ae5816126c7565b8114612af057600080fd5b50565b612afc816126f3565b8114612b0757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f1fdd7bd22daea29eb47983329be7b344b37fe0c51544b246d75f3aef986338764736f6c63430008070033
Deployed Bytecode
0x6080604052600436106100f75760003560e01c8063715018a61161008a578063a9059cbb11610059578063a9059cbb14610313578063c9567bf914610350578063dd62ed3e14610367578063f4293890146103a4576100fe565b8063715018a61461027b5780638da5cb5b1461029257806395d89b41146102bd57806399c8d556146102e8576100fe565b806323b872dd116100c657806323b872dd146101bf578063313ce567146101fc57806351bc3c851461022757806370a082311461023e576100fe565b8063053ab1821461010357806306fdde031461012c578063095ea7b31461015757806318160ddd14610194576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b5061012a60048036038101906101259190611f89565b6103bb565b005b34801561013857600080fd5b5061014161045c565b60405161014e9190612359565b60405180910390f35b34801561016357600080fd5b5061017e60048036038101906101799190611f1c565b610499565b60405161018b919061233e565b60405180910390f35b3480156101a057600080fd5b506101a96104b7565b6040516101b691906124bb565b60405180910390f35b3480156101cb57600080fd5b506101e660048036038101906101e19190611ec9565b6104c1565b6040516101f3919061233e565b60405180910390f35b34801561020857600080fd5b5061021161059a565b60405161021e9190612530565b60405180910390f35b34801561023357600080fd5b5061023c61059f565b005b34801561024a57600080fd5b5061026560048036038101906102609190611e2f565b610619565b60405161027291906124bb565b60405180910390f35b34801561028757600080fd5b50610290610669565b005b34801561029e57600080fd5b506102a76107c1565b6040516102b49190612270565b60405180910390f35b3480156102c957600080fd5b506102d26107eb565b6040516102df9190612359565b60405180910390f35b3480156102f457600080fd5b506102fd610828565b60405161030a91906124bb565b60405180910390f35b34801561031f57600080fd5b5061033a60048036038101906103359190611f1c565b610832565b604051610347919061233e565b60405180910390f35b34801561035c57600080fd5b50610365610850565b005b34801561037357600080fd5b5061038e60048036038101906103899190611e89565b610d66565b60405161039b91906124bb565b60405180910390f35b3480156103b057600080fd5b506103b9610ded565b005b6103c3610e5f565b73ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610452576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104499061243b565b60405180910390fd5b8060058190555050565b60606040518060400160405280600b81526020017f4465696461726120496e75000000000000000000000000000000000000000000815250905090565b60006104ad6104a6610e5f565b8484610e67565b6001905092915050565b6000600254905090565b60006104ce848484611032565b61058f846104da610e5f565b61058a85604051806060016040528060288152602001612b0b60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610540610e5f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113699092919063ffffffff16565b610e67565b600190509392505050565b600090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105e0610e5f565b73ffffffffffffffffffffffffffffffffffffffff161461060057600080fd5b600061060b30610619565b9050610616816113cd565b50565b60006106626000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611655565b9050919050565b610671610e5f565b73ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610700576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106f79061243b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600b81526020017f4445494441524120494e55000000000000000000000000000000000000000000815250905090565b6000600654905090565b600061084661083f610e5f565b8484611032565b6001905092915050565b610858610e5f565b73ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108de9061243b565b60405180910390fd5b600960149054906101000a900460ff1615610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092e906123db565b60405180910390fd5b61096630600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600254610e67565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156109ce57600080fd5b505afa1580156109e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a069190611e5c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610a8a57600080fd5b505afa158015610a9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac29190611e5c565b6040518363ffffffff1660e01b8152600401610adf92919061228b565b602060405180830381600087803b158015610af957600080fd5b505af1158015610b0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b319190611e5c565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610bba30610619565b600080610bc56107c1565b426040518863ffffffff1660e01b8152600401610be7969594939291906122dd565b6060604051808303818588803b158015610c0057600080fd5b505af1158015610c14573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c399190611fb6565b5050506001600960166101000a81548160ff0219169083151502179055506001600960146101000a81548160ff021916908315150217905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d119291906122b4565b602060405180830381600087803b158015610d2b57600080fd5b505af1158015610d3f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d639190611f5c565b50565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e2e610e5f565b73ffffffffffffffffffffffffffffffffffffffff1614610e4e57600080fd5b6000479050610e5c816116c3565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ed7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ece9061249b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3e906123bb565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161102591906124bb565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110999061247b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611112576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111099061237b565b60405180910390fd5b60008111611155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114c9061245b565b60405180910390fd5b60055481600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112045750600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b61120f576000611212565b60015b60ff1661121f9190612627565b111561122a57600080fd5b6112326107c1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156112a057506112706107c1565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561135957600960159054906101000a900460ff161580156113105750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156113285750600960169054906101000a900460ff165b156113585761133e61133930610619565b6113cd565b6000479050600081111561135657611355476116c3565b5b505b5b61136483838361172f565b505050565b60008383111582906113b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a89190612359565b60405180910390fd5b50600083856113c09190612681565b9050809150509392505050565b6001600960156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611405576114046127dc565b5b6040519080825280602002602001820160405280156114335781602001602082028036833780820191505090505b509050308160008151811061144b5761144a6127ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156114ed57600080fd5b505afa158015611501573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115259190611e5c565b81600181518110611539576115386127ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506115a030600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610e67565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016116049594939291906124d6565b600060405180830381600087803b15801561161e57600080fd5b505af1158015611632573d6000803e3d6000fd5b50505050506000600960156101000a81548160ff02191690831515021790555050565b600060035482111561169c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116939061239b565b60405180910390fd5b60006116a661173f565b90506116bb818461176a90919063ffffffff16565b915050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561172b573d6000803e3d6000fd5b5050565b61173a8383836117b4565b505050565b600080600061174c61197b565b91509150611763818361176a90919063ffffffff16565b9250505090565b60006117ac83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119c8565b905092915050565b6000806000806000806117c687611a2b565b955095509550955095509550611823866000808c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9090919063ffffffff16565b6000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118b6856000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ada90919063ffffffff16565b6000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061190181611b38565b61190b8483611bf3565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161196891906124bb565b60405180910390a3505050505050505050565b60008060006003549050600060025490506119a360025460035461176a90919063ffffffff16565b8210156119bb576003546002549350935050506119c4565b81819350935050505b9091565b60008083118290611a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a069190612359565b60405180910390fd5b5060008385611a1e91906125f6565b9050809150509392505050565b6000806000806000806000806000611a458a600654611c2d565b9250925092506000611a5561173f565b90506000806000611a688e878787611cc2565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000611ad283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611369565b905092915050565b6000808284611ae991906125a0565b905083811015611b2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b25906123fb565b60405180910390fd5b8091505092915050565b6000611b4261173f565b90506000611b598284611d4b90919063ffffffff16565b9050611bac816000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ada90919063ffffffff16565b6000803073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611c0882600354611a9090919063ffffffff16565b600381905550611c2381600454611ada90919063ffffffff16565b6004819055505050565b600080600080611c5a6064611c4c600289611d4b90919063ffffffff16565b61176a90919063ffffffff16565b90506000611c846064611c76888a611d4b90919063ffffffff16565b61176a90919063ffffffff16565b90506000611cad82611c9f858b611a9090919063ffffffff16565b611a9090919063ffffffff16565b90508083839550955095505050509250925092565b600080600080611cdb8589611d4b90919063ffffffff16565b90506000611cf28689611d4b90919063ffffffff16565b90506000611d098789611d4b90919063ffffffff16565b90506000611d3282611d248587611a9090919063ffffffff16565b611a9090919063ffffffff16565b9050838184965096509650505050509450945094915050565b600080831415611d5e5760009050611dc0565b60008284611d6c9190612627565b9050828482611d7b91906125f6565b14611dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db29061241b565b60405180910390fd5b809150505b92915050565b600081359050611dd581612ac5565b92915050565b600081519050611dea81612ac5565b92915050565b600081519050611dff81612adc565b92915050565b600081359050611e1481612af3565b92915050565b600081519050611e2981612af3565b92915050565b600060208284031215611e4557611e4461280b565b5b6000611e5384828501611dc6565b91505092915050565b600060208284031215611e7257611e7161280b565b5b6000611e8084828501611ddb565b91505092915050565b60008060408385031215611ea057611e9f61280b565b5b6000611eae85828601611dc6565b9250506020611ebf85828601611dc6565b9150509250929050565b600080600060608486031215611ee257611ee161280b565b5b6000611ef086828701611dc6565b9350506020611f0186828701611dc6565b9250506040611f1286828701611e05565b9150509250925092565b60008060408385031215611f3357611f3261280b565b5b6000611f4185828601611dc6565b9250506020611f5285828601611e05565b9150509250929050565b600060208284031215611f7257611f7161280b565b5b6000611f8084828501611df0565b91505092915050565b600060208284031215611f9f57611f9e61280b565b5b6000611fad84828501611e05565b91505092915050565b600080600060608486031215611fcf57611fce61280b565b5b6000611fdd86828701611e1a565b9350506020611fee86828701611e1a565b9250506040611fff86828701611e1a565b9150509250925092565b60006120158383612021565b60208301905092915050565b61202a816126b5565b82525050565b612039816126b5565b82525050565b600061204a8261255b565b612054818561257e565b935061205f8361254b565b8060005b838110156120905781516120778882612009565b975061208283612571565b925050600181019050612063565b5085935050505092915050565b6120a6816126c7565b82525050565b6120b58161270a565b82525050565b60006120c682612566565b6120d0818561258f565b93506120e081856020860161271c565b6120e981612810565b840191505092915050565b600061210160238361258f565b915061210c82612821565b604082019050919050565b6000612124602a8361258f565b915061212f82612870565b604082019050919050565b600061214760228361258f565b9150612152826128bf565b604082019050919050565b600061216a60178361258f565b91506121758261290e565b602082019050919050565b600061218d601b8361258f565b915061219882612937565b602082019050919050565b60006121b060218361258f565b91506121bb82612960565b604082019050919050565b60006121d360208361258f565b91506121de826129af565b602082019050919050565b60006121f660298361258f565b9150612201826129d8565b604082019050919050565b600061221960258361258f565b915061222482612a27565b604082019050919050565b600061223c60248361258f565b915061224782612a76565b604082019050919050565b61225b816126f3565b82525050565b61226a816126fd565b82525050565b60006020820190506122856000830184612030565b92915050565b60006040820190506122a06000830185612030565b6122ad6020830184612030565b9392505050565b60006040820190506122c96000830185612030565b6122d66020830184612252565b9392505050565b600060c0820190506122f26000830189612030565b6122ff6020830188612252565b61230c60408301876120ac565b61231960608301866120ac565b6123266080830185612030565b61233360a0830184612252565b979650505050505050565b6000602082019050612353600083018461209d565b92915050565b6000602082019050818103600083015261237381846120bb565b905092915050565b60006020820190508181036000830152612394816120f4565b9050919050565b600060208201905081810360008301526123b481612117565b9050919050565b600060208201905081810360008301526123d48161213a565b9050919050565b600060208201905081810360008301526123f48161215d565b9050919050565b6000602082019050818103600083015261241481612180565b9050919050565b60006020820190508181036000830152612434816121a3565b9050919050565b60006020820190508181036000830152612454816121c6565b9050919050565b60006020820190508181036000830152612474816121e9565b9050919050565b600060208201905081810360008301526124948161220c565b9050919050565b600060208201905081810360008301526124b48161222f565b9050919050565b60006020820190506124d06000830184612252565b92915050565b600060a0820190506124eb6000830188612252565b6124f860208301876120ac565b818103604083015261250a818661203f565b90506125196060830185612030565b6125266080830184612252565b9695505050505050565b60006020820190506125456000830184612261565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006125ab826126f3565b91506125b6836126f3565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156125eb576125ea61274f565b5b828201905092915050565b6000612601826126f3565b915061260c836126f3565b92508261261c5761261b61277e565b5b828204905092915050565b6000612632826126f3565b915061263d836126f3565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156126765761267561274f565b5b828202905092915050565b600061268c826126f3565b9150612697836126f3565b9250828210156126aa576126a961274f565b5b828203905092915050565b60006126c0826126d3565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612715826126f3565b9050919050565b60005b8381101561273a57808201518184015260208101905061271f565b83811115612749576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612ace816126b5565b8114612ad957600080fd5b50565b612ae5816126c7565b8114612af057600080fd5b50565b612afc816126f3565b8114612b0757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f1fdd7bd22daea29eb47983329be7b344b37fe0c51544b246d75f3aef986338764736f6c63430008070033
Deployed Bytecode Sourcemap
2683:7989:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8682:66;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3852:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5110:146;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4093:86;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5261:292;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4014:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8787:170;;;;;;;;;;;;;:::i;:::-;;4184:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4974:131;;;;;;;;;;;;;:::i;:::-;;4790:70;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3931:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4475:65;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4318:152;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7260:488;;;;;;;;;;;;;:::i;:::-;;4545:132;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8962:169;;;;;;;;;;;;;:::i;:::-;;8682:66;4909:12;:10;:12::i;:::-;4899:22;;:7;;;;;;;;;;;:22;;;4891:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8742:1:::1;8731:10;:12;;;;8682:66:::0;:::o;3852:74::-;3889:13;3198:10;;;;;;;;;;;;;;;;;3909:12;;3852:74;:::o;5110:146::-;5185:4;5196:39;5205:12;:10;:12::i;:::-;5219:7;5228:6;5196:8;:39::i;:::-;5247:4;5240:11;;5110:146;;;;:::o;4093:86::-;4146:7;4167;;4160:14;;4093:86;:::o;5261:292::-;5359:4;5370:36;5380:6;5388:9;5399:6;5370:9;:36::i;:::-;5411:121;5420:6;5428:12;:10;:12::i;:::-;5442:89;5480:6;5442:89;;;;;;;;;;;;;;;;;:11;:19;5454:6;5442:19;;;;;;;;;;;;;;;:33;5462:12;:10;:12::i;:::-;5442:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;5411:8;:121::i;:::-;5544:4;5537:11;;5261:292;;;;;:::o;4014:74::-;4055:5;4014:74;:::o;8787:170::-;8847:10;;;;;;;;;;;8831:26;;:12;:10;:12::i;:::-;:26;;;8823:35;;;;;;8863:23;8889:24;8907:4;8889:9;:24::i;:::-;8863:50;;8918:34;8936:15;8918:17;:34::i;:::-;8818:139;8787:170::o;4184:129::-;4250:7;4271:37;4291:7;:16;4299:7;4291:16;;;;;;;;;;;;;;;;4271:19;:37::i;:::-;4264:44;;4184:129;;;:::o;4974:131::-;4909:12;:10;:12::i;:::-;4899:22;;:7;;;;;;;;;;;:22;;;4891:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5075:1:::1;5038:40;;5059:6;;;;;;;;;;;5038:40;;;;;;;;;;;;5098:1;5083:6;;:17;;;;;;;;;;;;;;;;;;4974:131::o:0;4790:70::-;4828:7;4849:6;;;;;;;;;;;4842:13;;4790:70;:::o;3931:78::-;3970:13;3246:12;;;;;;;;;;;;;;;;;3990:14;;3931:78;:::o;4475:65::-;4511:7;4531:4;;4524:11;;4475:65;:::o;4318:152::-;4396:4;4407:42;4417:12;:10;:12::i;:::-;4431:9;4442:6;4407:9;:42::i;:::-;4461:4;4454:11;;4318:152;;;;:::o;7260:488::-;4909:12;:10;:12::i;:::-;4899:22;;:7;;;;;;;;;;;:22;;;4891:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7318:11:::1;;;;;;;;;;;7317:12;7309:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;7362:50;7379:4;7394:7;;;;;;;;;;;7404;;7362:8;:50::i;:::-;7443:7;;;;;;;;;;;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7425:47;;;7481:4;7488:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7425:78;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7417:5;;:86;;;;;;;;;;;;;;;;;;7508:7;;;;;;;;;;;:23;;;7540:21;7571:4;7578:24;7596:4;7578:9;:24::i;:::-;7604:1;7607::::0;7610:7:::1;:5;:7::i;:::-;7619:15;7508:127;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;7656:4;7642:11;;:18;;;;;;;;;;;;;;;;;;7679:4;7665:11;;:18;;;;;;;;;;;;;;;;;;7695:5;;;;;;;;;;;7688:21;;;7718:7;;;;;;;;;;;7728:14;7688:55;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7260:488::o:0;4545:132::-;4625:7;4646:11;:17;4658:4;4646:17;;;;;;;;;;;;;;;:26;4664:7;4646:26;;;;;;;;;;;;;;;;4639:33;;4545:132;;;;:::o;8962:169::-;9022:10;;;;;;;;;;;9006:26;;:12;:10;:12::i;:::-;:26;;;8998:35;;;;;;9038:26;9067:21;9038:50;;9093:33;9107:18;9093:13;:33::i;:::-;8993:138;8962:169::o;294:89::-;347:7;368:10;361:17;;294:89;:::o;5796:304::-;5898:1;5882:18;;:4;:18;;;;5874:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5973:1;5954:21;;:7;:21;;;;5946:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6048:6;6019:11;:17;6031:4;6019:17;;;;;;;;;;;;;;;:26;6037:7;6019:26;;;;;;;;;;;;;;;:35;;;;6079:7;6064:31;;6073:4;6064:31;;;6088:6;6064:31;;;;;;:::i;:::-;;;;;;;;5796:304;;;:::o;6105:705::-;6203:1;6187:18;;:4;:18;;;;6179:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6274:1;6260:16;;:2;:16;;;;6252:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6338:1;6329:6;:10;6321:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6457:10;;6447:6;6406:5;;;;;;;;;;;6400:11;;:2;:11;;;:39;;;;;6431:7;;;;;;;;;;;6415:24;;:4;:24;;;;6400:39;6399:46;;6444:1;6399:46;;;6442:1;6399:46;6398:55;;;;;;:::i;:::-;:69;;6390:78;;;;;;6487:7;:5;:7::i;:::-;6479:15;;:4;:15;;;;:32;;;;;6504:7;:5;:7::i;:::-;6498:13;;:2;:13;;;;6479:32;6475:294;;;6524:6;;;;;;;;;;;6523:7;:24;;;;;6542:5;;;;;;;;;;;6534:13;;:4;:13;;;;6523:24;:39;;;;;6551:11;;;;;;;;;;;6523:39;6519:245;;;6571:43;6589:24;6607:4;6589:9;:24::i;:::-;6571:17;:43::i;:::-;6621:26;6650:21;6621:50;;6703:1;6682:18;:22;6678:80;;;6714:36;6728:21;6714:13;:36::i;:::-;6678:80;6564:200;6519:245;6475:294;6773:32;6788:4;6794:2;6798:6;6773:14;:32::i;:::-;6105:705;;;:::o;1359:169::-;1445:7;1472:1;1467;:6;;1475:12;1459:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1493:9;1509:1;1505;:5;;;;:::i;:::-;1493:17;;1522:1;1515:8;;;1359:169;;;;;:::o;6815:351::-;3589:4;3580:6;;:13;;;;;;;;;;;;;;;;;;6888:21:::1;6926:1;6912:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6888:40;;6951:4;6933;6938:1;6933:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;6971:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6961:4;6966:1;6961:7;;;;;;;;:::i;:::-;;;;;;;:24;;;;;;;;;::::0;::::1;6990:54;7007:4;7022:7;;;;;;;;;;;7032:11;6990:8;:54::i;:::-;7049:7;;;;;;;;;;;:58;;;7108:11;7121:1;7124:4;7138;7145:15;7049:112;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;6883:283;3613:5:::0;3604:6;;:14;;;;;;;;;;;;;;;;;;6815:351;:::o;5558:233::-;5626:7;5659;;5648;:18;;5640:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;5718:19;5740:10;:8;:10::i;:::-;5718:32;;5762:24;5774:11;5762:7;:11;;:24;;;;:::i;:::-;5755:31;;;5558:233;;;:::o;7171:84::-;7223:10;;;;;;;;;;;:19;;:27;7243:6;7223:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7171:84;:::o;7753:137::-;7841:44;7859:6;7867:9;7878:6;7841:17;:44::i;:::-;7753:137;;;:::o;10285:149::-;10327:7;10342:15;10359;10378:19;:17;:19::i;:::-;10341:56;;;;10409:20;10421:7;10409;:11;;:20;;;;:::i;:::-;10402:27;;;;10285:149;:::o;1742:123::-;1800:7;1821:39;1825:1;1828;1821:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1814:46;;1742:123;;;;:::o;7897:448::-;7990:15;8007:23;8032:12;8046:23;8071:12;8085:13;8102:19;8113:7;8102:10;:19::i;:::-;7989:132;;;;;;;;;;;;8144:28;8164:7;8144;:15;8152:6;8144:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;8126:7;:15;8134:6;8126:15;;;;;;;;;;;;;;;:46;;;;8198:39;8221:15;8198:7;:18;8206:9;8198:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;8177:7;:18;8185:9;8177:18;;;;;;;;;;;;;;;:60;;;;8242:16;8252:5;8242:9;:16::i;:::-;8263:23;8275:4;8281;8263:11;:23::i;:::-;8313:9;8296:44;;8305:6;8296:44;;;8324:15;8296:44;;;;;;:::i;:::-;;;;;;;;7984:361;;;;;;7897:448;;;:::o;10439:230::-;10490:7;10499;10513:15;10531:7;;10513:25;;10543:15;10561:7;;10543:25;;10587:20;10599:7;;10587;;:11;;:20;;;;:::i;:::-;10577:7;:30;10573:61;;;10617:7;;10626;;10609:25;;;;;;;;10573:61;10647:7;10656;10639:25;;;;;;10439:230;;;:::o;1870:168::-;1956:7;1982:1;1978;:5;1985:12;1970:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2003:9;2019:1;2015;:5;;;;:::i;:::-;2003:17;;2032:1;2025:8;;;1870:168;;;;;:::o;9136:442::-;9195:7;9204;9213;9222;9231;9240;9255:23;9280:12;9294:13;9311:34;9331:7;9340:4;;9311:19;:34::i;:::-;9254:91;;;;;;9350:19;9372:10;:8;:10::i;:::-;9350:32;;9388:15;9405:23;9430:12;9446:53;9465:7;9474:4;9480:5;9487:11;9446:18;:53::i;:::-;9387:112;;;;;;9512:7;9521:15;9538:4;9544:15;9561:4;9567:5;9504:69;;;;;;;;;;;;;;;;;;;9136:442;;;;;;;:::o;1227:127::-;1285:7;1306:43;1310:1;1313;1306:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1299:50;;1227:127;;;;:::o;1064:158::-;1122:7;1136:9;1152:1;1148;:5;;;;:::i;:::-;1136:17;;1171:1;1166;:6;;1158:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1216:1;1209:8;;;1064:158;;;;:::o;8350:190::-;8397:19;8419:10;:8;:10::i;:::-;8397:32;;8434:13;8450:22;8460:11;8450:5;:9;;:22;;;;:::i;:::-;8434:38;;8502:33;8529:5;8502:7;:22;8518:4;8502:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;8477:7;:22;8493:4;8477:22;;;;;;;;;;;;;;;:58;;;;8392:148;;8350:190;:::o;8545:132::-;8617:17;8629:4;8617:7;;:11;;:17;;;;:::i;:::-;8607:7;:27;;;;8652:20;8667:4;8652:10;;:14;;:20;;;;:::i;:::-;8639:10;:33;;;;8545:132;;:::o;9583:309::-;9667:7;9676;9685;9699:12;9714:23;9733:3;9714:14;9726:1;9714:7;:11;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;9699:38;;9742:13;9758:28;9782:3;9758:19;9770:6;9758:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;9742:44;;9791:23;9817:28;9839:5;9817:17;9829:4;9817:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;9791:54;;9858:15;9875:4;9881:5;9850:37;;;;;;;;;9583:309;;;;;:::o;9897:383::-;10014:7;10023;10032;10046:15;10064:24;10076:11;10064:7;:11;;:24;;;;:::i;:::-;10046:42;;10093:12;10108:21;10117:11;10108:4;:8;;:21;;;;:::i;:::-;10093:36;;10134:13;10150:22;10160:11;10150:5;:9;;:22;;;;:::i;:::-;10134:38;;10177:23;10203:28;10225:5;10203:17;10215:4;10203:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;10177:54;;10244:7;10253:15;10270:4;10236:39;;;;;;;;;;9897:383;;;;;;;;:::o;1533:204::-;1591:7;1614:1;1609;:6;1605:32;;;1630:1;1623:8;;;;1605:32;1641:9;1657:1;1653;:5;;;;:::i;:::-;1641:17;;1680:1;1675;1671;:5;;;;:::i;:::-;:10;1663:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1731:1;1724:8;;;1533:204;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;301:137::-;355:5;386:6;380:13;371:22;;402:30;426:5;402:30;:::i;:::-;301:137;;;;:::o;444:139::-;490:5;528:6;515:20;506:29;;544:33;571:5;544:33;:::i;:::-;444:139;;;;:::o;589:143::-;646:5;677:6;671:13;662:22;;693:33;720:5;693:33;:::i;:::-;589:143;;;;:::o;738:329::-;797:6;846:2;834:9;825:7;821:23;817:32;814:119;;;852:79;;:::i;:::-;814:119;972:1;997:53;1042:7;1033:6;1022:9;1018:22;997:53;:::i;:::-;987:63;;943:117;738:329;;;;:::o;1073:351::-;1143:6;1192:2;1180:9;1171:7;1167:23;1163:32;1160:119;;;1198:79;;:::i;:::-;1160:119;1318:1;1343:64;1399:7;1390:6;1379:9;1375:22;1343:64;:::i;:::-;1333:74;;1289:128;1073:351;;;;:::o;1430:474::-;1498:6;1506;1555:2;1543:9;1534:7;1530:23;1526:32;1523:119;;;1561:79;;:::i;:::-;1523:119;1681:1;1706:53;1751:7;1742:6;1731:9;1727:22;1706:53;:::i;:::-;1696:63;;1652:117;1808:2;1834:53;1879:7;1870:6;1859:9;1855:22;1834:53;:::i;:::-;1824:63;;1779:118;1430:474;;;;;:::o;1910:619::-;1987:6;1995;2003;2052:2;2040:9;2031:7;2027:23;2023:32;2020:119;;;2058:79;;:::i;:::-;2020:119;2178:1;2203:53;2248:7;2239:6;2228:9;2224:22;2203:53;:::i;:::-;2193:63;;2149:117;2305:2;2331:53;2376:7;2367:6;2356:9;2352:22;2331:53;:::i;:::-;2321:63;;2276:118;2433:2;2459:53;2504:7;2495:6;2484:9;2480:22;2459:53;:::i;:::-;2449:63;;2404:118;1910:619;;;;;:::o;2535:474::-;2603:6;2611;2660:2;2648:9;2639:7;2635:23;2631:32;2628:119;;;2666:79;;:::i;:::-;2628:119;2786:1;2811:53;2856:7;2847:6;2836:9;2832:22;2811:53;:::i;:::-;2801:63;;2757:117;2913:2;2939:53;2984:7;2975:6;2964:9;2960:22;2939:53;:::i;:::-;2929:63;;2884:118;2535:474;;;;;:::o;3015:345::-;3082:6;3131:2;3119:9;3110:7;3106:23;3102:32;3099:119;;;3137:79;;:::i;:::-;3099:119;3257:1;3282:61;3335:7;3326:6;3315:9;3311:22;3282:61;:::i;:::-;3272:71;;3228:125;3015:345;;;;:::o;3366:329::-;3425:6;3474:2;3462:9;3453:7;3449:23;3445:32;3442:119;;;3480:79;;:::i;:::-;3442:119;3600:1;3625:53;3670:7;3661:6;3650:9;3646:22;3625:53;:::i;:::-;3615:63;;3571:117;3366:329;;;;:::o;3701:663::-;3789:6;3797;3805;3854:2;3842:9;3833:7;3829:23;3825:32;3822:119;;;3860:79;;:::i;:::-;3822:119;3980:1;4005:64;4061:7;4052:6;4041:9;4037:22;4005:64;:::i;:::-;3995:74;;3951:128;4118:2;4144:64;4200:7;4191:6;4180:9;4176:22;4144:64;:::i;:::-;4134:74;;4089:129;4257:2;4283:64;4339:7;4330:6;4319:9;4315:22;4283:64;:::i;:::-;4273:74;;4228:129;3701:663;;;;;:::o;4370:179::-;4439:10;4460:46;4502:3;4494:6;4460:46;:::i;:::-;4538:4;4533:3;4529:14;4515:28;;4370:179;;;;:::o;4555:108::-;4632:24;4650:5;4632:24;:::i;:::-;4627:3;4620:37;4555:108;;:::o;4669:118::-;4756:24;4774:5;4756:24;:::i;:::-;4751:3;4744:37;4669:118;;:::o;4823:732::-;4942:3;4971:54;5019:5;4971:54;:::i;:::-;5041:86;5120:6;5115:3;5041:86;:::i;:::-;5034:93;;5151:56;5201:5;5151:56;:::i;:::-;5230:7;5261:1;5246:284;5271:6;5268:1;5265:13;5246:284;;;5347:6;5341:13;5374:63;5433:3;5418:13;5374:63;:::i;:::-;5367:70;;5460:60;5513:6;5460:60;:::i;:::-;5450:70;;5306:224;5293:1;5290;5286:9;5281:14;;5246:284;;;5250:14;5546:3;5539:10;;4947:608;;;4823:732;;;;:::o;5561:109::-;5642:21;5657:5;5642:21;:::i;:::-;5637:3;5630:34;5561:109;;:::o;5676:147::-;5771:45;5810:5;5771:45;:::i;:::-;5766:3;5759:58;5676:147;;:::o;5829:364::-;5917:3;5945:39;5978:5;5945:39;:::i;:::-;6000:71;6064:6;6059:3;6000:71;:::i;:::-;5993:78;;6080:52;6125:6;6120:3;6113:4;6106:5;6102:16;6080:52;:::i;:::-;6157:29;6179:6;6157:29;:::i;:::-;6152:3;6148:39;6141:46;;5921:272;5829:364;;;;:::o;6199:366::-;6341:3;6362:67;6426:2;6421:3;6362:67;:::i;:::-;6355:74;;6438:93;6527:3;6438:93;:::i;:::-;6556:2;6551:3;6547:12;6540:19;;6199:366;;;:::o;6571:::-;6713:3;6734:67;6798:2;6793:3;6734:67;:::i;:::-;6727:74;;6810:93;6899:3;6810:93;:::i;:::-;6928:2;6923:3;6919:12;6912:19;;6571:366;;;:::o;6943:::-;7085:3;7106:67;7170:2;7165:3;7106:67;:::i;:::-;7099:74;;7182:93;7271:3;7182:93;:::i;:::-;7300:2;7295:3;7291:12;7284:19;;6943:366;;;:::o;7315:::-;7457:3;7478:67;7542:2;7537:3;7478:67;:::i;:::-;7471:74;;7554:93;7643:3;7554:93;:::i;:::-;7672:2;7667:3;7663:12;7656:19;;7315:366;;;:::o;7687:::-;7829:3;7850:67;7914:2;7909:3;7850:67;:::i;:::-;7843:74;;7926:93;8015:3;7926:93;:::i;:::-;8044:2;8039:3;8035:12;8028:19;;7687:366;;;:::o;8059:::-;8201:3;8222:67;8286:2;8281:3;8222:67;:::i;:::-;8215:74;;8298:93;8387:3;8298:93;:::i;:::-;8416:2;8411:3;8407:12;8400:19;;8059:366;;;:::o;8431:::-;8573:3;8594:67;8658:2;8653:3;8594:67;:::i;:::-;8587:74;;8670:93;8759:3;8670:93;:::i;:::-;8788:2;8783:3;8779:12;8772:19;;8431:366;;;:::o;8803:::-;8945:3;8966:67;9030:2;9025:3;8966:67;:::i;:::-;8959:74;;9042:93;9131:3;9042:93;:::i;:::-;9160:2;9155:3;9151:12;9144:19;;8803:366;;;:::o;9175:::-;9317:3;9338:67;9402:2;9397:3;9338:67;:::i;:::-;9331:74;;9414:93;9503:3;9414:93;:::i;:::-;9532:2;9527:3;9523:12;9516:19;;9175:366;;;:::o;9547:::-;9689:3;9710:67;9774:2;9769:3;9710:67;:::i;:::-;9703:74;;9786:93;9875:3;9786:93;:::i;:::-;9904:2;9899:3;9895:12;9888:19;;9547:366;;;:::o;9919:118::-;10006:24;10024:5;10006:24;:::i;:::-;10001:3;9994:37;9919:118;;:::o;10043:112::-;10126:22;10142:5;10126:22;:::i;:::-;10121:3;10114:35;10043:112;;:::o;10161:222::-;10254:4;10292:2;10281:9;10277:18;10269:26;;10305:71;10373:1;10362:9;10358:17;10349:6;10305:71;:::i;:::-;10161:222;;;;:::o;10389:332::-;10510:4;10548:2;10537:9;10533:18;10525:26;;10561:71;10629:1;10618:9;10614:17;10605:6;10561:71;:::i;:::-;10642:72;10710:2;10699:9;10695:18;10686:6;10642:72;:::i;:::-;10389:332;;;;;:::o;10727:::-;10848:4;10886:2;10875:9;10871:18;10863:26;;10899:71;10967:1;10956:9;10952:17;10943:6;10899:71;:::i;:::-;10980:72;11048:2;11037:9;11033:18;11024:6;10980:72;:::i;:::-;10727:332;;;;;:::o;11065:807::-;11314:4;11352:3;11341:9;11337:19;11329:27;;11366:71;11434:1;11423:9;11419:17;11410:6;11366:71;:::i;:::-;11447:72;11515:2;11504:9;11500:18;11491:6;11447:72;:::i;:::-;11529:80;11605:2;11594:9;11590:18;11581:6;11529:80;:::i;:::-;11619;11695:2;11684:9;11680:18;11671:6;11619:80;:::i;:::-;11709:73;11777:3;11766:9;11762:19;11753:6;11709:73;:::i;:::-;11792;11860:3;11849:9;11845:19;11836:6;11792:73;:::i;:::-;11065:807;;;;;;;;;:::o;11878:210::-;11965:4;12003:2;11992:9;11988:18;11980:26;;12016:65;12078:1;12067:9;12063:17;12054:6;12016:65;:::i;:::-;11878:210;;;;:::o;12094:313::-;12207:4;12245:2;12234:9;12230:18;12222:26;;12294:9;12288:4;12284:20;12280:1;12269:9;12265:17;12258:47;12322:78;12395:4;12386:6;12322:78;:::i;:::-;12314:86;;12094:313;;;;:::o;12413:419::-;12579:4;12617:2;12606:9;12602:18;12594:26;;12666:9;12660:4;12656:20;12652:1;12641:9;12637:17;12630:47;12694:131;12820:4;12694:131;:::i;:::-;12686:139;;12413:419;;;:::o;12838:::-;13004:4;13042:2;13031:9;13027:18;13019:26;;13091:9;13085:4;13081:20;13077:1;13066:9;13062:17;13055:47;13119:131;13245:4;13119:131;:::i;:::-;13111:139;;12838:419;;;:::o;13263:::-;13429:4;13467:2;13456:9;13452:18;13444:26;;13516:9;13510:4;13506:20;13502:1;13491:9;13487:17;13480:47;13544:131;13670:4;13544:131;:::i;:::-;13536:139;;13263:419;;;:::o;13688:::-;13854:4;13892:2;13881:9;13877:18;13869:26;;13941:9;13935:4;13931:20;13927:1;13916:9;13912:17;13905:47;13969:131;14095:4;13969:131;:::i;:::-;13961:139;;13688:419;;;:::o;14113:::-;14279:4;14317:2;14306:9;14302:18;14294:26;;14366:9;14360:4;14356:20;14352:1;14341:9;14337:17;14330:47;14394:131;14520:4;14394:131;:::i;:::-;14386:139;;14113:419;;;:::o;14538:::-;14704:4;14742:2;14731:9;14727:18;14719:26;;14791:9;14785:4;14781:20;14777:1;14766:9;14762:17;14755:47;14819:131;14945:4;14819:131;:::i;:::-;14811:139;;14538:419;;;:::o;14963:::-;15129:4;15167:2;15156:9;15152:18;15144:26;;15216:9;15210:4;15206:20;15202:1;15191:9;15187:17;15180:47;15244:131;15370:4;15244:131;:::i;:::-;15236:139;;14963:419;;;:::o;15388:::-;15554:4;15592:2;15581:9;15577:18;15569:26;;15641:9;15635:4;15631:20;15627:1;15616:9;15612:17;15605:47;15669:131;15795:4;15669:131;:::i;:::-;15661:139;;15388:419;;;:::o;15813:::-;15979:4;16017:2;16006:9;16002:18;15994:26;;16066:9;16060:4;16056:20;16052:1;16041:9;16037:17;16030:47;16094:131;16220:4;16094:131;:::i;:::-;16086:139;;15813:419;;;:::o;16238:::-;16404:4;16442:2;16431:9;16427:18;16419:26;;16491:9;16485:4;16481:20;16477:1;16466:9;16462:17;16455:47;16519:131;16645:4;16519:131;:::i;:::-;16511:139;;16238:419;;;:::o;16663:222::-;16756:4;16794:2;16783:9;16779:18;16771:26;;16807:71;16875:1;16864:9;16860:17;16851:6;16807:71;:::i;:::-;16663:222;;;;:::o;16891:831::-;17154:4;17192:3;17181:9;17177:19;17169:27;;17206:71;17274:1;17263:9;17259:17;17250:6;17206:71;:::i;:::-;17287:80;17363:2;17352:9;17348:18;17339:6;17287:80;:::i;:::-;17414:9;17408:4;17404:20;17399:2;17388:9;17384:18;17377:48;17442:108;17545:4;17536:6;17442:108;:::i;:::-;17434:116;;17560:72;17628:2;17617:9;17613:18;17604:6;17560:72;:::i;:::-;17642:73;17710:3;17699:9;17695:19;17686:6;17642:73;:::i;:::-;16891:831;;;;;;;;:::o;17728:214::-;17817:4;17855:2;17844:9;17840:18;17832:26;;17868:67;17932:1;17921:9;17917:17;17908:6;17868:67;:::i;:::-;17728:214;;;;:::o;18029:132::-;18096:4;18119:3;18111:11;;18149:4;18144:3;18140:14;18132:22;;18029:132;;;:::o;18167:114::-;18234:6;18268:5;18262:12;18252:22;;18167:114;;;:::o;18287:99::-;18339:6;18373:5;18367:12;18357:22;;18287:99;;;:::o;18392:113::-;18462:4;18494;18489:3;18485:14;18477:22;;18392:113;;;:::o;18511:184::-;18610:11;18644:6;18639:3;18632:19;18684:4;18679:3;18675:14;18660:29;;18511:184;;;;:::o;18701:169::-;18785:11;18819:6;18814:3;18807:19;18859:4;18854:3;18850:14;18835:29;;18701:169;;;;:::o;18876:305::-;18916:3;18935:20;18953:1;18935:20;:::i;:::-;18930:25;;18969:20;18987:1;18969:20;:::i;:::-;18964:25;;19123:1;19055:66;19051:74;19048:1;19045:81;19042:107;;;19129:18;;:::i;:::-;19042:107;19173:1;19170;19166:9;19159:16;;18876:305;;;;:::o;19187:185::-;19227:1;19244:20;19262:1;19244:20;:::i;:::-;19239:25;;19278:20;19296:1;19278:20;:::i;:::-;19273:25;;19317:1;19307:35;;19322:18;;:::i;:::-;19307:35;19364:1;19361;19357:9;19352:14;;19187:185;;;;:::o;19378:348::-;19418:7;19441:20;19459:1;19441:20;:::i;:::-;19436:25;;19475:20;19493:1;19475:20;:::i;:::-;19470:25;;19663:1;19595:66;19591:74;19588:1;19585:81;19580:1;19573:9;19566:17;19562:105;19559:131;;;19670:18;;:::i;:::-;19559:131;19718:1;19715;19711:9;19700:20;;19378:348;;;;:::o;19732:191::-;19772:4;19792:20;19810:1;19792:20;:::i;:::-;19787:25;;19826:20;19844:1;19826:20;:::i;:::-;19821:25;;19865:1;19862;19859:8;19856:34;;;19870:18;;:::i;:::-;19856:34;19915:1;19912;19908:9;19900:17;;19732:191;;;;:::o;19929:96::-;19966:7;19995:24;20013:5;19995:24;:::i;:::-;19984:35;;19929:96;;;:::o;20031:90::-;20065:7;20108:5;20101:13;20094:21;20083:32;;20031:90;;;:::o;20127:126::-;20164:7;20204:42;20197:5;20193:54;20182:65;;20127:126;;;:::o;20259:77::-;20296:7;20325:5;20314:16;;20259:77;;;:::o;20342:86::-;20377:7;20417:4;20410:5;20406:16;20395:27;;20342:86;;;:::o;20434:121::-;20492:9;20525:24;20543:5;20525:24;:::i;:::-;20512:37;;20434:121;;;:::o;20561:307::-;20629:1;20639:113;20653:6;20650:1;20647:13;20639:113;;;20738:1;20733:3;20729:11;20723:18;20719:1;20714:3;20710:11;20703:39;20675:2;20672:1;20668:10;20663:15;;20639:113;;;20770:6;20767:1;20764:13;20761:101;;;20850:1;20841:6;20836:3;20832:16;20825:27;20761:101;20610:258;20561:307;;;:::o;20874:180::-;20922:77;20919:1;20912:88;21019:4;21016:1;21009:15;21043:4;21040:1;21033:15;21060:180;21108:77;21105:1;21098:88;21205:4;21202:1;21195:15;21229:4;21226:1;21219:15;21246:180;21294:77;21291:1;21284:88;21391:4;21388:1;21381:15;21415:4;21412:1;21405:15;21432:180;21480:77;21477:1;21470:88;21577:4;21574:1;21567:15;21601:4;21598:1;21591:15;21741:117;21850:1;21847;21840:12;21864:102;21905:6;21956:2;21952:7;21947:2;21940:5;21936:14;21932:28;21922:38;;21864:102;;;:::o;21972:222::-;22112:34;22108:1;22100:6;22096:14;22089:58;22181:5;22176:2;22168:6;22164:15;22157:30;21972:222;:::o;22200:229::-;22340:34;22336:1;22328:6;22324:14;22317:58;22409:12;22404:2;22396:6;22392:15;22385:37;22200:229;:::o;22435:221::-;22575:34;22571:1;22563:6;22559:14;22552:58;22644:4;22639:2;22631:6;22627:15;22620:29;22435:221;:::o;22662:173::-;22802:25;22798:1;22790:6;22786:14;22779:49;22662:173;:::o;22841:177::-;22981:29;22977:1;22969:6;22965:14;22958:53;22841:177;:::o;23024:220::-;23164:34;23160:1;23152:6;23148:14;23141:58;23233:3;23228:2;23220:6;23216:15;23209:28;23024:220;:::o;23250:182::-;23390:34;23386:1;23378:6;23374:14;23367:58;23250:182;:::o;23438:228::-;23578:34;23574:1;23566:6;23562:14;23555:58;23647:11;23642:2;23634:6;23630:15;23623:36;23438:228;:::o;23672:224::-;23812:34;23808:1;23800:6;23796:14;23789:58;23881:7;23876:2;23868:6;23864:15;23857:32;23672:224;:::o;23902:223::-;24042:34;24038:1;24030:6;24026:14;24019:58;24111:6;24106:2;24098:6;24094:15;24087:31;23902:223;:::o;24131:122::-;24204:24;24222:5;24204:24;:::i;:::-;24197:5;24194:35;24184:63;;24243:1;24240;24233:12;24184:63;24131:122;:::o;24259:116::-;24329:21;24344:5;24329:21;:::i;:::-;24322:5;24319:32;24309:60;;24365:1;24362;24355:12;24309:60;24259:116;:::o;24381:122::-;24454:24;24472:5;24454:24;:::i;:::-;24447:5;24444:35;24434:63;;24493:1;24490;24483:12;24434:63;24381:122;:::o
Swarm Source
ipfs://f1fdd7bd22daea29eb47983329be7b344b37fe0c51544b246d75f3aef9863387
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.