Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
69,000,000,000,000 FLOG
Holders
7
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 5 Decimals)
Balance
427,369,116,377.40442 FLOGValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
FLOG
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-11-13 */ /** FLOG AI $FLOG: 6,900,000,000 TAX: 1/2% Website: https://flogai.xyz Follow us on X: https://twitter.com/flog_ai Join our community: https://t.me/FlogAi **/ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.15; 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 ); } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } 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( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract FLOG is Context, IERC20, Ownable { using SafeMath for uint256; string private constant _name = "FLOG AI"; string private constant _symbol = "FLOG"; uint8 private constant _decimals = 5; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 6900000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _taxFeeOnBuy = 1; mapping(address => uint256) private _rOwned; mapping(address => uint256) private _tOwned; IUniswapV2Router02 public uniswapV2Router; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; uint256 private _taxFeeOnSell = 2; uint256 private _taxFee = _taxFeeOnSell; uint256 private _previoustaxFee = _taxFee; address public uniswapV2Pair; bool private inSwap = false; bool private swapEnabled = true; modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor() { _rOwned[_msgSender()] = _rTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);// uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(_rOwned[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 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 removeAllFee() private { if (_taxFee == 0) return; _previoustaxFee = _taxFee; _taxFee = 0; } function restoreAllFee() private { _taxFee = _previoustaxFee; } 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"); bool takeFee = true; if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) { takeFee = false; } else { if(from == uniswapV2Pair && to != address(uniswapV2Router)) { _taxFee = _taxFeeOnBuy; } if (to == uniswapV2Pair && from != address(uniswapV2Router)) { _taxFee = _taxFeeOnSell; } } _tokenTransfer(from, to, amount, takeFee); } 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 _tokenTransfer( address sender, address recipient, uint256 amount, bool takeFee ) private { if (!takeFee) removeAllFee(); _transferStandard(sender, recipient, amount); if (!takeFee) restoreAllFee(); } 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); } receive() external payable {} function _getValues(uint256 tAmount) private view returns ( uint256, uint256, uint256, uint256, uint256, uint256 ) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues( uint256 tAmount, uint256 taxFee ) private pure returns ( uint256, uint256, uint256 ) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tTeam = tAmount.mul(taxFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function adjustFee(uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner { _taxFeeOnBuy = taxFeeOnBuy; _taxFeeOnSell = taxFeeOnSell; } function _getRValues( 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":"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":[{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"adjustFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052675fc1b971363200005f196200001b91906200051b565b5f196200002991906200057f565b60025560016004556002600a55600a54600b55600b54600c555f600d60146101000a81548160ff0219169083151502179055506001600d60156101000a81548160ff02191690831515021790555034801562000083575f80fd5b505f62000095620004b760201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060025460055f62000147620004b760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f737a250d5630b4cf539739df2c5dacb4c659f2488d90508060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000226573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200024c91906200061e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002b2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002d891906200061e565b6040518363ffffffff1660e01b8152600401620002f79291906200065f565b6020604051808303815f875af115801562000314573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200033a91906200061e565b600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160095f6200038e620004be60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555062000442620004b760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef675fc1b97136320000604051620004a891906200069b565b60405180910390a350620006b6565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6200052782620004e5565b91506200053483620004e5565b925082620005475762000546620004ee565b5b828206905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6200058b82620004e5565b91506200059883620004e5565b9250828203905081811115620005b357620005b262000552565b5b92915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620005e882620005bd565b9050919050565b620005fa81620005dc565b811462000605575f80fd5b50565b5f815190506200061881620005ef565b92915050565b5f60208284031215620006365762000635620005b9565b5b5f620006458482850162000608565b91505092915050565b6200065981620005dc565b82525050565b5f604082019050620006745f8301856200064e565b6200068360208301846200064e565b9392505050565b6200069581620004e5565b82525050565b5f602082019050620006b05f8301846200068a565b92915050565b61220380620006c45f395ff3fe6080604052600436106100eb575f3560e01c806349bd5a5e1161008957806395d89b411161005857806395d89b41146102e4578063a9059cbb1461030e578063dd62ed3e1461034a578063f2fde38b14610386576100f2565b806349bd5a5e1461023e57806370a0823114610268578063715018a6146102a45780638da5cb5b146102ba576100f2565b806318160ddd116100c557806318160ddd1461018657806323b872dd146101b0578063313ce567146101ec578063484cb52514610216576100f2565b806306fdde03146100f6578063095ea7b3146101205780631694505e1461015c576100f2565b366100f257005b5f80fd5b348015610101575f80fd5b5061010a6103ae565b6040516101179190611823565b60405180910390f35b34801561012b575f80fd5b50610146600480360381019061014191906118d4565b6103eb565b604051610153919061192c565b60405180910390f35b348015610167575f80fd5b50610170610408565b60405161017d91906119a0565b60405180910390f35b348015610191575f80fd5b5061019a61042d565b6040516101a791906119c8565b60405180910390f35b3480156101bb575f80fd5b506101d660048036038101906101d191906119e1565b61043c565b6040516101e3919061192c565b60405180910390f35b3480156101f7575f80fd5b50610200610510565b60405161020d9190611a4c565b60405180910390f35b348015610221575f80fd5b5061023c60048036038101906102379190611a65565b610518565b005b348015610249575f80fd5b506102526105be565b60405161025f9190611ab2565b60405180910390f35b348015610273575f80fd5b5061028e60048036038101906102899190611acb565b6105e3565b60405161029b91906119c8565b60405180910390f35b3480156102af575f80fd5b506102b8610631565b005b3480156102c5575f80fd5b506102ce61077f565b6040516102db9190611ab2565b60405180910390f35b3480156102ef575f80fd5b506102f86107a6565b6040516103059190611823565b60405180910390f35b348015610319575f80fd5b50610334600480360381019061032f91906118d4565b6107e3565b604051610341919061192c565b60405180910390f35b348015610355575f80fd5b50610370600480360381019061036b9190611af6565b610800565b60405161037d91906119c8565b60405180910390f35b348015610391575f80fd5b506103ac60048036038101906103a79190611acb565b610882565b005b60606040518060400160405280600781526020017f464c4f4720414900000000000000000000000000000000000000000000000000815250905090565b5f6103fe6103f7610a3f565b8484610a46565b6001905092915050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f675fc1b97136320000905090565b5f610448848484610c09565b61050584610454610a3f565b610500856040518060600160405280602881526020016121a66028913960085f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104b7610a3f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546110089092919063ffffffff16565b610a46565b600190509392505050565b5f6005905090565b610520610a3f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a390611b7e565b60405180910390fd5b8160048190555080600a819055505050565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f61062a60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461106a565b9050919050565b610639610a3f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106bc90611b7e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f464c4f4700000000000000000000000000000000000000000000000000000000815250905090565b5f6107f66107ef610a3f565b8484610c09565b6001905092915050565b5f60085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61088a610a3f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610916576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090d90611b7e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097b90611c0c565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aab90611c9a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1990611d28565b60405180910390fd5b8060085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610bfc91906119c8565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6e90611db6565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ce5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdc90611e44565b60405180910390fd5b5f8111610d27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1e90611ed2565b60405180910390fd5b5f6001905060095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680610dc7575060095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80610e785750600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610e775750600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15610e85575f9050610ff6565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015610f2e575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f3d57600454600b819055505b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015610fe6575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15610ff557600a54600b819055505b5b611002848484846110d6565b50505050565b5f83831115829061104f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110469190611823565b60405180910390fd5b505f838561105d9190611f1d565b9050809150509392505050565b5f6002548211156110b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a790611fc0565b60405180910390fd5b5f6110b9611103565b90506110ce818461112c90919063ffffffff16565b915050919050565b806110e4576110e3611175565b5b6110ef848484611192565b806110fd576110fc611352565b5b50505050565b5f805f61110e61135d565b91509150611125818361112c90919063ffffffff16565b9250505090565b5f61116d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506113b9565b905092915050565b5f600b54031561119057600b54600c819055505f600b819055505b565b5f805f805f806111a18761141a565b9550955095509550955095506111fd8660055f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461147790919063ffffffff16565b60055f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061128e8560055f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114c090919063ffffffff16565b60055f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506112d88161151d565b6112e284836115d4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161133f91906119c8565b60405180910390a3505050505050505050565b600c54600b81905550565b5f805f60025490505f675fc1b97136320000905061138e675fc1b9713632000060025461112c90919063ffffffff16565b8210156113ac57600254675fc1b971363200009350935050506113b5565b81819350935050505b9091565b5f80831182906113ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f69190611823565b60405180910390fd5b505f838561140d919061200b565b9050809150509392505050565b5f805f805f805f805f61142f8a600b5461160e565b9250925092505f61143e611103565b90505f805f61144f8e87878761169e565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b5f6114b883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611008565b905092915050565b5f8082846114ce919061203b565b905083811015611513576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150a906120b8565b60405180910390fd5b8091505092915050565b5f611526611103565b90505f61153c828461172290919063ffffffff16565b905061158e8160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114c090919063ffffffff16565b60055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b6115e98260025461147790919063ffffffff16565b600281905550611604816003546114c090919063ffffffff16565b6003819055505050565b5f805f80611638606461162a878961172290919063ffffffff16565b61112c90919063ffffffff16565b90505f6116616064611653888a61172290919063ffffffff16565b61112c90919063ffffffff16565b90505f6116898261167b858b61147790919063ffffffff16565b61147790919063ffffffff16565b90508083839550955095505050509250925092565b5f805f806116b5858961172290919063ffffffff16565b90505f6116cb868961172290919063ffffffff16565b90505f6116e1878961172290919063ffffffff16565b90505f611709826116fb858761147790919063ffffffff16565b61147790919063ffffffff16565b9050838184965096509650505050509450945094915050565b5f808303611732575f9050611793565b5f828461173f91906120d6565b905082848261174e919061200b565b1461178e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178590612187565b60405180910390fd5b809150505b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156117d05780820151818401526020810190506117b5565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6117f582611799565b6117ff81856117a3565b935061180f8185602086016117b3565b611818816117db565b840191505092915050565b5f6020820190508181035f83015261183b81846117eb565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61187082611847565b9050919050565b61188081611866565b811461188a575f80fd5b50565b5f8135905061189b81611877565b92915050565b5f819050919050565b6118b3816118a1565b81146118bd575f80fd5b50565b5f813590506118ce816118aa565b92915050565b5f80604083850312156118ea576118e9611843565b5b5f6118f78582860161188d565b9250506020611908858286016118c0565b9150509250929050565b5f8115159050919050565b61192681611912565b82525050565b5f60208201905061193f5f83018461191d565b92915050565b5f819050919050565b5f61196861196361195e84611847565b611945565b611847565b9050919050565b5f6119798261194e565b9050919050565b5f61198a8261196f565b9050919050565b61199a81611980565b82525050565b5f6020820190506119b35f830184611991565b92915050565b6119c2816118a1565b82525050565b5f6020820190506119db5f8301846119b9565b92915050565b5f805f606084860312156119f8576119f7611843565b5b5f611a058682870161188d565b9350506020611a168682870161188d565b9250506040611a27868287016118c0565b9150509250925092565b5f60ff82169050919050565b611a4681611a31565b82525050565b5f602082019050611a5f5f830184611a3d565b92915050565b5f8060408385031215611a7b57611a7a611843565b5b5f611a88858286016118c0565b9250506020611a99858286016118c0565b9150509250929050565b611aac81611866565b82525050565b5f602082019050611ac55f830184611aa3565b92915050565b5f60208284031215611ae057611adf611843565b5b5f611aed8482850161188d565b91505092915050565b5f8060408385031215611b0c57611b0b611843565b5b5f611b198582860161188d565b9250506020611b2a8582860161188d565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611b686020836117a3565b9150611b7382611b34565b602082019050919050565b5f6020820190508181035f830152611b9581611b5c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611bf66026836117a3565b9150611c0182611b9c565b604082019050919050565b5f6020820190508181035f830152611c2381611bea565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611c846024836117a3565b9150611c8f82611c2a565b604082019050919050565b5f6020820190508181035f830152611cb181611c78565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611d126022836117a3565b9150611d1d82611cb8565b604082019050919050565b5f6020820190508181035f830152611d3f81611d06565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611da06025836117a3565b9150611dab82611d46565b604082019050919050565b5f6020820190508181035f830152611dcd81611d94565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611e2e6023836117a3565b9150611e3982611dd4565b604082019050919050565b5f6020820190508181035f830152611e5b81611e22565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f611ebc6029836117a3565b9150611ec782611e62565b604082019050919050565b5f6020820190508181035f830152611ee981611eb0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611f27826118a1565b9150611f32836118a1565b9250828203905081811115611f4a57611f49611ef0565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c20725f8201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b5f611faa602a836117a3565b9150611fb582611f50565b604082019050919050565b5f6020820190508181035f830152611fd781611f9e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612015826118a1565b9150612020836118a1565b9250826120305761202f611fde565b5b828204905092915050565b5f612045826118a1565b9150612050836118a1565b925082820190508082111561206857612067611ef0565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6120a2601b836117a3565b91506120ad8261206e565b602082019050919050565b5f6020820190508181035f8301526120cf81612096565b9050919050565b5f6120e0826118a1565b91506120eb836118a1565b92508282026120f9816118a1565b915082820484148315176121105761210f611ef0565b5b5092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6121716021836117a3565b915061217c82612117565b604082019050919050565b5f6020820190508181035f83015261219e81612165565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c6b150dddc24ebd245488e55c622e00fceb9f0f2e2d59078f95cfeed8aa381a864736f6c63430008140033
Deployed Bytecode
0x6080604052600436106100eb575f3560e01c806349bd5a5e1161008957806395d89b411161005857806395d89b41146102e4578063a9059cbb1461030e578063dd62ed3e1461034a578063f2fde38b14610386576100f2565b806349bd5a5e1461023e57806370a0823114610268578063715018a6146102a45780638da5cb5b146102ba576100f2565b806318160ddd116100c557806318160ddd1461018657806323b872dd146101b0578063313ce567146101ec578063484cb52514610216576100f2565b806306fdde03146100f6578063095ea7b3146101205780631694505e1461015c576100f2565b366100f257005b5f80fd5b348015610101575f80fd5b5061010a6103ae565b6040516101179190611823565b60405180910390f35b34801561012b575f80fd5b50610146600480360381019061014191906118d4565b6103eb565b604051610153919061192c565b60405180910390f35b348015610167575f80fd5b50610170610408565b60405161017d91906119a0565b60405180910390f35b348015610191575f80fd5b5061019a61042d565b6040516101a791906119c8565b60405180910390f35b3480156101bb575f80fd5b506101d660048036038101906101d191906119e1565b61043c565b6040516101e3919061192c565b60405180910390f35b3480156101f7575f80fd5b50610200610510565b60405161020d9190611a4c565b60405180910390f35b348015610221575f80fd5b5061023c60048036038101906102379190611a65565b610518565b005b348015610249575f80fd5b506102526105be565b60405161025f9190611ab2565b60405180910390f35b348015610273575f80fd5b5061028e60048036038101906102899190611acb565b6105e3565b60405161029b91906119c8565b60405180910390f35b3480156102af575f80fd5b506102b8610631565b005b3480156102c5575f80fd5b506102ce61077f565b6040516102db9190611ab2565b60405180910390f35b3480156102ef575f80fd5b506102f86107a6565b6040516103059190611823565b60405180910390f35b348015610319575f80fd5b50610334600480360381019061032f91906118d4565b6107e3565b604051610341919061192c565b60405180910390f35b348015610355575f80fd5b50610370600480360381019061036b9190611af6565b610800565b60405161037d91906119c8565b60405180910390f35b348015610391575f80fd5b506103ac60048036038101906103a79190611acb565b610882565b005b60606040518060400160405280600781526020017f464c4f4720414900000000000000000000000000000000000000000000000000815250905090565b5f6103fe6103f7610a3f565b8484610a46565b6001905092915050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f675fc1b97136320000905090565b5f610448848484610c09565b61050584610454610a3f565b610500856040518060600160405280602881526020016121a66028913960085f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104b7610a3f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546110089092919063ffffffff16565b610a46565b600190509392505050565b5f6005905090565b610520610a3f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a390611b7e565b60405180910390fd5b8160048190555080600a819055505050565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f61062a60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461106a565b9050919050565b610639610a3f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106bc90611b7e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f464c4f4700000000000000000000000000000000000000000000000000000000815250905090565b5f6107f66107ef610a3f565b8484610c09565b6001905092915050565b5f60085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61088a610a3f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610916576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090d90611b7e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097b90611c0c565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aab90611c9a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1990611d28565b60405180910390fd5b8060085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610bfc91906119c8565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6e90611db6565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ce5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdc90611e44565b60405180910390fd5b5f8111610d27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1e90611ed2565b60405180910390fd5b5f6001905060095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680610dc7575060095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80610e785750600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610e775750600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15610e85575f9050610ff6565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015610f2e575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f3d57600454600b819055505b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015610fe6575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15610ff557600a54600b819055505b5b611002848484846110d6565b50505050565b5f83831115829061104f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110469190611823565b60405180910390fd5b505f838561105d9190611f1d565b9050809150509392505050565b5f6002548211156110b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a790611fc0565b60405180910390fd5b5f6110b9611103565b90506110ce818461112c90919063ffffffff16565b915050919050565b806110e4576110e3611175565b5b6110ef848484611192565b806110fd576110fc611352565b5b50505050565b5f805f61110e61135d565b91509150611125818361112c90919063ffffffff16565b9250505090565b5f61116d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506113b9565b905092915050565b5f600b54031561119057600b54600c819055505f600b819055505b565b5f805f805f806111a18761141a565b9550955095509550955095506111fd8660055f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461147790919063ffffffff16565b60055f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061128e8560055f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114c090919063ffffffff16565b60055f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506112d88161151d565b6112e284836115d4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161133f91906119c8565b60405180910390a3505050505050505050565b600c54600b81905550565b5f805f60025490505f675fc1b97136320000905061138e675fc1b9713632000060025461112c90919063ffffffff16565b8210156113ac57600254675fc1b971363200009350935050506113b5565b81819350935050505b9091565b5f80831182906113ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f69190611823565b60405180910390fd5b505f838561140d919061200b565b9050809150509392505050565b5f805f805f805f805f61142f8a600b5461160e565b9250925092505f61143e611103565b90505f805f61144f8e87878761169e565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b5f6114b883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611008565b905092915050565b5f8082846114ce919061203b565b905083811015611513576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150a906120b8565b60405180910390fd5b8091505092915050565b5f611526611103565b90505f61153c828461172290919063ffffffff16565b905061158e8160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114c090919063ffffffff16565b60055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b6115e98260025461147790919063ffffffff16565b600281905550611604816003546114c090919063ffffffff16565b6003819055505050565b5f805f80611638606461162a878961172290919063ffffffff16565b61112c90919063ffffffff16565b90505f6116616064611653888a61172290919063ffffffff16565b61112c90919063ffffffff16565b90505f6116898261167b858b61147790919063ffffffff16565b61147790919063ffffffff16565b90508083839550955095505050509250925092565b5f805f806116b5858961172290919063ffffffff16565b90505f6116cb868961172290919063ffffffff16565b90505f6116e1878961172290919063ffffffff16565b90505f611709826116fb858761147790919063ffffffff16565b61147790919063ffffffff16565b9050838184965096509650505050509450945094915050565b5f808303611732575f9050611793565b5f828461173f91906120d6565b905082848261174e919061200b565b1461178e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178590612187565b60405180910390fd5b809150505b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156117d05780820151818401526020810190506117b5565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6117f582611799565b6117ff81856117a3565b935061180f8185602086016117b3565b611818816117db565b840191505092915050565b5f6020820190508181035f83015261183b81846117eb565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61187082611847565b9050919050565b61188081611866565b811461188a575f80fd5b50565b5f8135905061189b81611877565b92915050565b5f819050919050565b6118b3816118a1565b81146118bd575f80fd5b50565b5f813590506118ce816118aa565b92915050565b5f80604083850312156118ea576118e9611843565b5b5f6118f78582860161188d565b9250506020611908858286016118c0565b9150509250929050565b5f8115159050919050565b61192681611912565b82525050565b5f60208201905061193f5f83018461191d565b92915050565b5f819050919050565b5f61196861196361195e84611847565b611945565b611847565b9050919050565b5f6119798261194e565b9050919050565b5f61198a8261196f565b9050919050565b61199a81611980565b82525050565b5f6020820190506119b35f830184611991565b92915050565b6119c2816118a1565b82525050565b5f6020820190506119db5f8301846119b9565b92915050565b5f805f606084860312156119f8576119f7611843565b5b5f611a058682870161188d565b9350506020611a168682870161188d565b9250506040611a27868287016118c0565b9150509250925092565b5f60ff82169050919050565b611a4681611a31565b82525050565b5f602082019050611a5f5f830184611a3d565b92915050565b5f8060408385031215611a7b57611a7a611843565b5b5f611a88858286016118c0565b9250506020611a99858286016118c0565b9150509250929050565b611aac81611866565b82525050565b5f602082019050611ac55f830184611aa3565b92915050565b5f60208284031215611ae057611adf611843565b5b5f611aed8482850161188d565b91505092915050565b5f8060408385031215611b0c57611b0b611843565b5b5f611b198582860161188d565b9250506020611b2a8582860161188d565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611b686020836117a3565b9150611b7382611b34565b602082019050919050565b5f6020820190508181035f830152611b9581611b5c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611bf66026836117a3565b9150611c0182611b9c565b604082019050919050565b5f6020820190508181035f830152611c2381611bea565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611c846024836117a3565b9150611c8f82611c2a565b604082019050919050565b5f6020820190508181035f830152611cb181611c78565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611d126022836117a3565b9150611d1d82611cb8565b604082019050919050565b5f6020820190508181035f830152611d3f81611d06565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611da06025836117a3565b9150611dab82611d46565b604082019050919050565b5f6020820190508181035f830152611dcd81611d94565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611e2e6023836117a3565b9150611e3982611dd4565b604082019050919050565b5f6020820190508181035f830152611e5b81611e22565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f611ebc6029836117a3565b9150611ec782611e62565b604082019050919050565b5f6020820190508181035f830152611ee981611eb0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611f27826118a1565b9150611f32836118a1565b9250828203905081811115611f4a57611f49611ef0565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c20725f8201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b5f611faa602a836117a3565b9150611fb582611f50565b604082019050919050565b5f6020820190508181035f830152611fd781611f9e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612015826118a1565b9150612020836118a1565b9250826120305761202f611fde565b5b828204905092915050565b5f612045826118a1565b9150612050836118a1565b925082820190508082111561206857612067611ef0565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6120a2601b836117a3565b91506120ad8261206e565b602082019050919050565b5f6020820190508181035f8301526120cf81612096565b9050919050565b5f6120e0826118a1565b91506120eb836118a1565b92508282026120f9816118a1565b915082820484148315176121105761210f611ef0565b5b5092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6121716021836117a3565b915061217c82612117565b604082019050919050565b5f6020820190508181035f83015261219e81612165565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c6b150dddc24ebd245488e55c622e00fceb9f0f2e2d59078f95cfeed8aa381a864736f6c63430008140033
Deployed Bytecode Sourcemap
4241:9059:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5849:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6774:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4800:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6126:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6975:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6035:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12150:163;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5114:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6229:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1728:148;;;;;;;;;;;;;:::i;:::-;;1514:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5940:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6375:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6582:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1884:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5849:83;5886:13;5919:5;;;;;;;;;;;;;;;;;5912:12;;5849:83;:::o;6774:193::-;6876:4;6898:39;6907:12;:10;:12::i;:::-;6921:7;6930:6;6898:8;:39::i;:::-;6955:4;6948:11;;6774:193;;;;:::o;4800:41::-;;;;;;;;;;;;;:::o;6126:95::-;6179:7;4547:18;6199:14;;6126:95;:::o;6975:446::-;7107:4;7124:36;7134:6;7142:9;7153:6;7124:9;:36::i;:::-;7171:220;7194:6;7215:12;:10;:12::i;:::-;7242:138;7298:6;7242:138;;;;;;;;;;;;;;;;;:11;:19;7254:6;7242:19;;;;;;;;;;;;;;;:33;7262:12;:10;:12::i;:::-;7242:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7171:8;:220::i;:::-;7409:4;7402:11;;6975:446;;;;;:::o;6035:83::-;6076:5;4455:1;6094:16;;6035:83;:::o;12150:163::-;1651:12;:10;:12::i;:::-;1641:22;;:6;;;;;;;;;;:22;;;1633:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12255:11:::1;12240:12;:26;;;;12293:12;12277:13;:28;;;;12150:163:::0;;:::o;5114:28::-;;;;;;;;;;;;;:::o;6229:138::-;6295:7;6322:37;6342:7;:16;6350:7;6342:16;;;;;;;;;;;;;;;;6322:19;:37::i;:::-;6315:44;;6229:138;;;:::o;1728:148::-;1651:12;:10;:12::i;:::-;1641:22;;:6;;;;;;;;;;:22;;;1633:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1835:1:::1;1798:40;;1819:6;::::0;::::1;;;;;;;;1798:40;;;;;;;;;;;;1866:1;1849:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1728:148::o:0;1514:79::-;1552:7;1579:6;;;;;;;;;;;1572:13;;1514:79;:::o;5940:87::-;5979:13;6012:7;;;;;;;;;;;;;;;;;6005:14;;5940:87;:::o;6375:199::-;6480:4;6502:42;6512:12;:10;:12::i;:::-;6526:9;6537:6;6502:9;:42::i;:::-;6562:4;6555:11;;6375:199;;;;:::o;6582:184::-;6699:7;6731:11;:18;6743:5;6731:18;;;;;;;;;;;;;;;:27;6750:7;6731:27;;;;;;;;;;;;;;;;6724:34;;6582:184;;;;:::o;1884:244::-;1651:12;:10;:12::i;:::-;1641:22;;:6;;;;;;;;;;:22;;;1633:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1993:1:::1;1973:22;;:8;:22;;::::0;1965:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2083:8;2054:38;;2075:6;::::0;::::1;;;;;;;;2054:38;;;;;;;;;;;;2112:8;2103:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;1884:244:::0;:::o;273:98::-;326:7;353:10;346:17;;273:98;:::o;7996:369::-;8140:1;8123:19;;:5;:19;;;8115:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8221:1;8202:21;;:7;:21;;;8194:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8303:6;8273:11;:18;8285:5;8273:18;;;;;;;;;;;;;;;:27;8292:7;8273:27;;;;;;;;;;;;;;;:36;;;;8341:7;8325:32;;8334:5;8325:32;;;8350:6;8325:32;;;;;;:::i;:::-;;;;;;;;7996:369;;;:::o;8373:900::-;8511:1;8495:18;;:4;:18;;;8487:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8588:1;8574:16;;:2;:16;;;8566:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8658:1;8649:6;:10;8641:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8716:12;8731:4;8716:19;;8753:18;:24;8772:4;8753:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8781:18;:22;8800:2;8781:22;;;;;;;;;;;;;;;;;;;;;;;;;8753:50;8752:102;;;;8817:13;;;;;;;;;;;8809:21;;:4;:21;;;;:44;;;;;8840:13;;;;;;;;;;;8834:19;;:2;:19;;;;8809:44;8752:102;8748:464;;;8881:5;8871:15;;8748:464;;;8930:13;;;;;;;;;;;8922:21;;:4;:21;;;:55;;;;;8961:15;;;;;;;;;;;8947:30;;:2;:30;;;;8922:55;8919:132;;;9023:12;;9013:7;:22;;;;8919:132;9075:13;;;;;;;;;;;9069:19;;:2;:19;;;:55;;;;;9108:15;;;;;;;;;;;9092:32;;:4;:32;;;;9069:55;9065:134;;;9170:13;;9160:7;:23;;;;9065:134;8748:464;9224:41;9239:4;9245:2;9249:6;9257:7;9224:14;:41::i;:::-;8476:797;8373:900;;;:::o;2492:224::-;2612:7;2645:1;2640;:6;;2648:12;2632:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2672:9;2688:1;2684;:5;;;;:::i;:::-;2672:17;;2707:1;2700:8;;;2492:224;;;;;:::o;7429:323::-;7524:7;7582;;7571;:18;;7549:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;7670:19;7692:10;:8;:10::i;:::-;7670:32;;7720:24;7732:11;7720:7;:11;;:24;;;;:::i;:::-;7713:31;;;7429:323;;;:::o;9772:282::-;9928:7;9923:28;;9937:14;:12;:14::i;:::-;9923:28;9962:44;9980:6;9988:9;9999:6;9962:17;:44::i;:::-;10022:7;10017:29;;10031:15;:13;:15::i;:::-;10017:29;9772:282;;;;:::o;12863:164::-;12905:7;12926:15;12943;12962:19;:17;:19::i;:::-;12925:56;;;;12999:20;13011:7;12999;:11;;:20;;;;:::i;:::-;12992:27;;;;12863:164;:::o;2978:132::-;3036:7;3063:39;3067:1;3070;3063:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;3056:46;;2978:132;;;;:::o;7760:141::-;7818:1;7807:7;;:12;7803:25;7821:7;7803:25;7860:7;;7842:15;:25;;;;7892:1;7882:7;:11;;;;7760:141;:::o;10062:610::-;10209:15;10239:23;10277:12;10304:23;10342:12;10369:13;10396:19;10407:7;10396:10;:19::i;:::-;10194:221;;;;;;;;;;;;10444:28;10464:7;10444;:15;10452:6;10444:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10426:7;:15;10434:6;10426:15;;;;;;;;;;;;;;;:46;;;;10504:39;10527:15;10504:7;:18;10512:9;10504:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;10483:7;:18;10491:9;10483:18;;;;;;;;;;;;;;;:60;;;;10554:16;10564:5;10554:9;:16::i;:::-;10581:23;10593:4;10599;10581:11;:23::i;:::-;10637:9;10620:44;;10629:6;10620:44;;;10648:15;10620:44;;;;;;:::i;:::-;;;;;;;;10183:489;;;;;;10062:610;;;:::o;7909:79::-;7965:15;;7955:7;:25;;;;7909:79::o;13035:257::-;13086:7;13095;13115:15;13133:7;;13115:25;;13151:15;4547:18;13151:25;;13201:20;4547:18;13201:7;;:11;;:20;;;;:::i;:::-;13191:7;:30;13187:61;;;13231:7;;4547:18;13223:25;;;;;;;;13187:61;13267:7;13276;13259:25;;;;;;13035:257;;;:::o;3118:223::-;3238:7;3270:1;3266;:5;3273:12;3258:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3297:9;3313:1;3309;:5;;;;:::i;:::-;3297:17;;3332:1;3325:8;;;3118:223;;;;;:::o;11091:604::-;11191:7;11213;11235;11257;11279;11301;11337:23;11362:12;11376:13;11406:29;11418:7;11427;;11406:11;:29::i;:::-;11336:99;;;;;;11446:19;11468:10;:8;:10::i;:::-;11446:32;;11490:15;11507:23;11532:12;11561:46;11573:7;11582:4;11588:5;11595:11;11561;:46::i;:::-;11489:118;;;;;;11626:7;11635:15;11652:4;11658:15;11675:4;11681:5;11618:69;;;;;;;;;;;;;;;;;;;11091:604;;;;;;;:::o;2348:136::-;2406:7;2433:43;2437:1;2440;2433:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2426:50;;2348:136;;;;:::o;2161:179::-;2219:7;2239:9;2255:1;2251;:5;;;;:::i;:::-;2239:17;;2280:1;2275;:6;;2267:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2331:1;2324:8;;;2161:179;;;;:::o;10680:211::-;10733:19;10755:10;:8;:10::i;:::-;10733:32;;10776:13;10792:22;10802:11;10792:5;:9;;:22;;;;:::i;:::-;10776:38;;10850:33;10877:5;10850:7;:22;10866:4;10850:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;10825:7;:22;10841:4;10825:22;;;;;;;;;;;;;;;:58;;;;10722:169;;10680:211;:::o;10899:147::-;10977:17;10989:4;10977:7;;:11;;:17;;;;:::i;:::-;10967:7;:27;;;;11018:20;11033:4;11018:10;;:14;;:20;;;;:::i;:::-;11005:10;:33;;;;10899:147;;:::o;11703:440::-;11845:7;11867;11889;11924:12;11939:28;11963:3;11939:19;11951:6;11939:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;11924:43;;11978:13;11994:28;12018:3;11994:19;12006:6;11994:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;11978:44;;12033:23;12059:28;12081:5;12059:17;12071:4;12059:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12033:54;;12106:15;12123:4;12129:5;12098:37;;;;;;;;;11703:440;;;;;:::o;12321:534::-;12515:7;12537;12559;12594:15;12612:24;12624:11;12612:7;:11;;:24;;;;:::i;:::-;12594:42;;12647:12;12662:21;12671:11;12662:4;:8;;:21;;;;:::i;:::-;12647:36;;12694:13;12710:22;12720:11;12710:5;:9;;:22;;;;:::i;:::-;12694:38;;12743:23;12769:28;12791:5;12769:17;12781:4;12769:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12743:54;;12816:7;12825:15;12842:4;12808:39;;;;;;;;;;12321:534;;;;;;;;:::o;2724:246::-;2782:7;2811:1;2806;:6;2802:47;;2836:1;2829:8;;;;2802:47;2859:9;2875:1;2871;:5;;;;:::i;:::-;2859:17;;2904:1;2899;2895;:5;;;;:::i;:::-;:10;2887:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2961:1;2954:8;;;2724:246;;;;;:::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:60::-;3474:3;3495:5;3488:12;;3446:60;;;:::o;3512:142::-;3562:9;3595:53;3613:34;3622:24;3640:5;3622:24;:::i;:::-;3613:34;:::i;:::-;3595:53;:::i;:::-;3582:66;;3512:142;;;:::o;3660:126::-;3710:9;3743:37;3774:5;3743:37;:::i;:::-;3730:50;;3660:126;;;:::o;3792:152::-;3868:9;3901:37;3932:5;3901:37;:::i;:::-;3888:50;;3792:152;;;:::o;3950:183::-;4063:63;4120:5;4063:63;:::i;:::-;4058:3;4051:76;3950:183;;:::o;4139:274::-;4258:4;4296:2;4285:9;4281:18;4273:26;;4309:97;4403:1;4392:9;4388:17;4379:6;4309:97;:::i;:::-;4139:274;;;;:::o;4419:118::-;4506:24;4524:5;4506:24;:::i;:::-;4501:3;4494:37;4419:118;;:::o;4543:222::-;4636:4;4674:2;4663:9;4659:18;4651:26;;4687:71;4755:1;4744:9;4740:17;4731:6;4687:71;:::i;:::-;4543:222;;;;:::o;4771:619::-;4848:6;4856;4864;4913:2;4901:9;4892:7;4888:23;4884:32;4881:119;;;4919:79;;:::i;:::-;4881:119;5039:1;5064:53;5109:7;5100:6;5089:9;5085:22;5064:53;:::i;:::-;5054:63;;5010:117;5166:2;5192:53;5237:7;5228:6;5217:9;5213:22;5192:53;:::i;:::-;5182:63;;5137:118;5294:2;5320:53;5365:7;5356:6;5345:9;5341:22;5320:53;:::i;:::-;5310:63;;5265:118;4771:619;;;;;:::o;5396:86::-;5431:7;5471:4;5464:5;5460:16;5449:27;;5396:86;;;:::o;5488:112::-;5571:22;5587:5;5571:22;:::i;:::-;5566:3;5559:35;5488:112;;:::o;5606:214::-;5695:4;5733:2;5722:9;5718:18;5710:26;;5746:67;5810:1;5799:9;5795:17;5786:6;5746:67;:::i;:::-;5606:214;;;;:::o;5826:474::-;5894:6;5902;5951:2;5939:9;5930:7;5926:23;5922:32;5919:119;;;5957:79;;:::i;:::-;5919:119;6077:1;6102:53;6147:7;6138:6;6127:9;6123:22;6102:53;:::i;:::-;6092:63;;6048:117;6204:2;6230:53;6275:7;6266:6;6255:9;6251:22;6230:53;:::i;:::-;6220:63;;6175:118;5826:474;;;;;:::o;6306:118::-;6393:24;6411:5;6393:24;:::i;:::-;6388:3;6381:37;6306:118;;:::o;6430:222::-;6523:4;6561:2;6550:9;6546:18;6538:26;;6574:71;6642:1;6631:9;6627:17;6618:6;6574:71;:::i;:::-;6430:222;;;;:::o;6658:329::-;6717:6;6766:2;6754:9;6745:7;6741:23;6737:32;6734:119;;;6772:79;;:::i;:::-;6734:119;6892:1;6917:53;6962:7;6953:6;6942:9;6938:22;6917:53;:::i;:::-;6907:63;;6863:117;6658:329;;;;:::o;6993:474::-;7061:6;7069;7118:2;7106:9;7097:7;7093:23;7089:32;7086:119;;;7124:79;;:::i;:::-;7086:119;7244:1;7269:53;7314:7;7305:6;7294:9;7290:22;7269:53;:::i;:::-;7259:63;;7215:117;7371:2;7397:53;7442:7;7433:6;7422:9;7418:22;7397:53;:::i;:::-;7387:63;;7342:118;6993:474;;;;;:::o;7473:182::-;7613:34;7609:1;7601:6;7597:14;7590:58;7473:182;:::o;7661:366::-;7803:3;7824:67;7888:2;7883:3;7824:67;:::i;:::-;7817:74;;7900:93;7989:3;7900:93;:::i;:::-;8018:2;8013:3;8009:12;8002:19;;7661:366;;;:::o;8033:419::-;8199:4;8237:2;8226:9;8222:18;8214:26;;8286:9;8280:4;8276:20;8272:1;8261:9;8257:17;8250:47;8314:131;8440:4;8314:131;:::i;:::-;8306:139;;8033:419;;;:::o;8458:225::-;8598:34;8594:1;8586:6;8582:14;8575:58;8667:8;8662:2;8654:6;8650:15;8643:33;8458:225;:::o;8689:366::-;8831:3;8852:67;8916:2;8911:3;8852:67;:::i;:::-;8845:74;;8928:93;9017:3;8928:93;:::i;:::-;9046:2;9041:3;9037:12;9030:19;;8689:366;;;:::o;9061:419::-;9227:4;9265:2;9254:9;9250:18;9242:26;;9314:9;9308:4;9304:20;9300:1;9289:9;9285:17;9278:47;9342:131;9468:4;9342:131;:::i;:::-;9334:139;;9061:419;;;:::o;9486:223::-;9626:34;9622:1;9614:6;9610:14;9603:58;9695:6;9690:2;9682:6;9678:15;9671:31;9486:223;:::o;9715:366::-;9857:3;9878:67;9942:2;9937:3;9878:67;:::i;:::-;9871:74;;9954:93;10043:3;9954:93;:::i;:::-;10072:2;10067:3;10063:12;10056:19;;9715:366;;;:::o;10087:419::-;10253:4;10291:2;10280:9;10276:18;10268:26;;10340:9;10334:4;10330:20;10326:1;10315:9;10311:17;10304:47;10368:131;10494:4;10368:131;:::i;:::-;10360:139;;10087:419;;;:::o;10512:221::-;10652:34;10648:1;10640:6;10636:14;10629:58;10721:4;10716:2;10708:6;10704:15;10697:29;10512:221;:::o;10739:366::-;10881:3;10902:67;10966:2;10961:3;10902:67;:::i;:::-;10895:74;;10978:93;11067:3;10978:93;:::i;:::-;11096:2;11091:3;11087:12;11080:19;;10739:366;;;:::o;11111:419::-;11277:4;11315:2;11304:9;11300:18;11292:26;;11364:9;11358:4;11354:20;11350:1;11339:9;11335:17;11328:47;11392:131;11518:4;11392:131;:::i;:::-;11384:139;;11111:419;;;:::o;11536:224::-;11676:34;11672:1;11664:6;11660:14;11653:58;11745:7;11740:2;11732:6;11728:15;11721:32;11536:224;:::o;11766:366::-;11908:3;11929:67;11993:2;11988:3;11929:67;:::i;:::-;11922:74;;12005:93;12094:3;12005:93;:::i;:::-;12123:2;12118:3;12114:12;12107:19;;11766:366;;;:::o;12138:419::-;12304:4;12342:2;12331:9;12327:18;12319:26;;12391:9;12385:4;12381:20;12377:1;12366:9;12362:17;12355:47;12419:131;12545:4;12419:131;:::i;:::-;12411:139;;12138:419;;;:::o;12563:222::-;12703:34;12699:1;12691:6;12687:14;12680:58;12772:5;12767:2;12759:6;12755:15;12748:30;12563:222;:::o;12791:366::-;12933:3;12954:67;13018:2;13013:3;12954:67;:::i;:::-;12947:74;;13030:93;13119:3;13030:93;:::i;:::-;13148:2;13143:3;13139:12;13132:19;;12791:366;;;:::o;13163:419::-;13329:4;13367:2;13356:9;13352:18;13344:26;;13416:9;13410:4;13406:20;13402:1;13391:9;13387:17;13380:47;13444:131;13570:4;13444:131;:::i;:::-;13436:139;;13163:419;;;:::o;13588:228::-;13728:34;13724:1;13716:6;13712:14;13705:58;13797:11;13792:2;13784:6;13780:15;13773:36;13588:228;:::o;13822:366::-;13964:3;13985:67;14049:2;14044:3;13985:67;:::i;:::-;13978:74;;14061:93;14150:3;14061:93;:::i;:::-;14179:2;14174:3;14170:12;14163:19;;13822:366;;;:::o;14194:419::-;14360:4;14398:2;14387:9;14383:18;14375:26;;14447:9;14441:4;14437:20;14433:1;14422:9;14418:17;14411:47;14475:131;14601:4;14475:131;:::i;:::-;14467:139;;14194:419;;;:::o;14619:180::-;14667:77;14664:1;14657:88;14764:4;14761:1;14754:15;14788:4;14785:1;14778:15;14805:194;14845:4;14865:20;14883:1;14865:20;:::i;:::-;14860:25;;14899:20;14917:1;14899:20;:::i;:::-;14894:25;;14943:1;14940;14936:9;14928:17;;14967:1;14961:4;14958:11;14955:37;;;14972:18;;:::i;:::-;14955:37;14805:194;;;;:::o;15005:229::-;15145:34;15141:1;15133:6;15129:14;15122:58;15214:12;15209:2;15201:6;15197:15;15190:37;15005:229;:::o;15240:366::-;15382:3;15403:67;15467:2;15462:3;15403:67;:::i;:::-;15396:74;;15479:93;15568:3;15479:93;:::i;:::-;15597:2;15592:3;15588:12;15581:19;;15240:366;;;:::o;15612:419::-;15778:4;15816:2;15805:9;15801:18;15793:26;;15865:9;15859:4;15855:20;15851:1;15840:9;15836:17;15829:47;15893:131;16019:4;15893:131;:::i;:::-;15885:139;;15612:419;;;:::o;16037:180::-;16085:77;16082:1;16075:88;16182:4;16179:1;16172:15;16206:4;16203:1;16196:15;16223:185;16263:1;16280:20;16298:1;16280:20;:::i;:::-;16275:25;;16314:20;16332:1;16314:20;:::i;:::-;16309:25;;16353:1;16343:35;;16358:18;;:::i;:::-;16343:35;16400:1;16397;16393:9;16388:14;;16223:185;;;;:::o;16414:191::-;16454:3;16473:20;16491:1;16473:20;:::i;:::-;16468:25;;16507:20;16525:1;16507:20;:::i;:::-;16502:25;;16550:1;16547;16543:9;16536:16;;16571:3;16568:1;16565:10;16562:36;;;16578:18;;:::i;:::-;16562:36;16414:191;;;;:::o;16611:177::-;16751:29;16747:1;16739:6;16735:14;16728:53;16611:177;:::o;16794:366::-;16936:3;16957:67;17021:2;17016:3;16957:67;:::i;:::-;16950:74;;17033:93;17122:3;17033:93;:::i;:::-;17151:2;17146:3;17142:12;17135:19;;16794:366;;;:::o;17166:419::-;17332:4;17370:2;17359:9;17355:18;17347:26;;17419:9;17413:4;17409:20;17405:1;17394:9;17390:17;17383:47;17447:131;17573:4;17447:131;:::i;:::-;17439:139;;17166:419;;;:::o;17591:410::-;17631:7;17654:20;17672:1;17654:20;:::i;:::-;17649:25;;17688:20;17706:1;17688:20;:::i;:::-;17683:25;;17743:1;17740;17736:9;17765:30;17783:11;17765:30;:::i;:::-;17754:41;;17944:1;17935:7;17931:15;17928:1;17925:22;17905:1;17898:9;17878:83;17855:139;;17974:18;;:::i;:::-;17855:139;17639:362;17591:410;;;;:::o;18007:220::-;18147:34;18143:1;18135:6;18131:14;18124:58;18216:3;18211:2;18203:6;18199:15;18192:28;18007:220;:::o;18233:366::-;18375:3;18396:67;18460:2;18455:3;18396:67;:::i;:::-;18389:74;;18472:93;18561:3;18472:93;:::i;:::-;18590:2;18585:3;18581:12;18574:19;;18233:366;;;:::o;18605:419::-;18771:4;18809:2;18798:9;18794:18;18786:26;;18858:9;18852:4;18848:20;18844:1;18833:9;18829:17;18822:47;18886:131;19012:4;18886:131;:::i;:::-;18878:139;;18605:419;;;:::o
Swarm Source
ipfs://c6b150dddc24ebd245488e55c622e00fceb9f0f2e2d59078f95cfeed8aa381a8
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.