ERC-20
Overview
Max Total Supply
7,000,000,000 POG
Holders
40
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
50,032,923.952321815 POGValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
POG
Compiler Version
v0.8.15+commit.e14f2714
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-09-20 */ /** PROOF OF GENESIS (POG) In the beginning God created Ethereum. TG: https://t.me/ProofOfGenesis TWITTER: https://twitter.com/ProofofGenesis */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.15; 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 ERC20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); 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); } abstract contract Ownable { address internal owner; constructor(address _owner) { owner = _owner; } modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } function isOwner(address account) public view returns (bool) { return account == owner; } function renounceOwnership() public onlyOwner { owner = address(0); emit OwnershipTransferred(address(0)); } event OwnershipTransferred(address owner); } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract POG is ERC20, Ownable { using SafeMath for uint256; address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; address DEAD = 0x000000000000000000000000000000000000dEaD; string constant _name = "Proof of Genesis"; string constant _symbol = "POG"; uint8 constant _decimals = 9; uint256 _totalSupply = 7_000_000_000 * (10 ** _decimals); uint256 public _maxWalletAmount = _totalSupply * 2 / 100; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) isFeeExempt; mapping (address => bool) isTxLimitExempt; mapping(address => bool) public isBot; uint256 marketingFee = 5; uint256 sellMarketingFee = 5; uint256 feeDenominator = 100; address public marketingFeeReceiver = msg.sender; IDEXRouter public router; address public pair; bool public swapEnabled = true; uint256 public swapThreshold = _totalSupply / 10000 * 30; bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } constructor () Ownable(msg.sender) { router = IDEXRouter(routerAdress); pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this)); _allowances[address(this)][address(router)] = type(uint256).max; address _owner = owner; isFeeExempt[_owner] = true; isTxLimitExempt[_owner] = true; isTxLimitExempt[DEAD] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } receive() external payable { } function totalSupply() external view override returns (uint256) { return _totalSupply; } function decimals() external pure override returns (uint8) { return _decimals; } function symbol() external pure override returns (string memory) { return _symbol; } function name() external pure override returns (string memory) { return _name; } function getOwner() external view override returns (address) { return owner; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if(_allowances[sender][msg.sender] != type(uint256).max){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if(inSwap){ return _basicTransfer(sender, recipient, amount); } if (recipient != pair && recipient != DEAD) { require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletAmount, "Transfer amount exceeds the bag size."); } require(!isBot[sender], "Bot Address"); if(shouldSwapBack()){ swapBack(); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = amount; if(shouldTakeFee(sender)){ if(sender == pair){ amountReceived = takeFee(sender, amount,false); }else{ amountReceived = takeFee(sender, amount,true); } } _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); return true; } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function shouldTakeFee(address sender) internal view returns (bool) { return !isFeeExempt[sender]; } function takeFee(address sender, uint256 amount, bool isSell) internal returns (uint256) { uint feeAmount = isSell ? amount.mul(sellMarketingFee).div(feeDenominator) : amount.mul(marketingFee).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !inSwap && swapEnabled && _balances[address(this)] >= swapThreshold; } function swapBack() internal swapping { uint256 amountToSwap = _balances[address(this)]; if (amountToSwap >= (swapThreshold*3)){ amountToSwap = swapThreshold*3; } address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); if (address(this).balance >= 100000000000000000){ payable(marketingFeeReceiver).transfer(address(this).balance); } } function buyTokens(uint256 amount, address to) internal swapping { address[] memory path = new address[](2); path[0] = router.WETH(); path[1] = address(this); router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}( 0, path, to, block.timestamp ); } function manualSend() external { payable(marketingFeeReceiver).transfer(address(this).balance); } function setWalletLimit(uint256 amountPercent) external onlyOwner { _maxWalletAmount = (_totalSupply * amountPercent ) / 1000; } function swapStatus (bool status) external onlyOwner { swapEnabled = status; } function oneBot(address botAddress, bool status) external onlyOwner { isBot[botAddress] = status; } function multiBots(address[] memory bots_, bool status) public onlyOwner { for (uint256 i = 0; i < bots_.length; i++) { isBot[bots_[i]] = status; } } function setFees(uint256 _MarketingFee, uint256 _sellMarketingFee) external onlyOwner { marketingFee = _MarketingFee; sellMarketingFee = _sellMarketingFee; require(marketingFee <= 10 && sellMarketingFee <= 10, "Must keep fees at 10% or less"); } function setThreshold(uint256 _treshold) external onlyOwner { swapThreshold = _treshold; } function setFeeReceivers(address _marketingFeeReceiver) external onlyOwner { marketingFeeReceiver = _marketingFeeReceiver; } event AutoLiquify(uint256 amountETH, uint256 amountBOG); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","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":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"multiBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"botAddress","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"oneBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingFeeReceiver","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_MarketingFee","type":"uint256"},{"internalType":"uint256","name":"_sellMarketingFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treshold","type":"uint256"}],"name":"setThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercent","type":"uint256"}],"name":"setWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"swapStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600180546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d179091556002805490911661dead179055620000486009600a6200044e565b62000059906401a13b860062000466565b600355606460035460026200006f919062000466565b6200007b919062000488565b6004556005600a819055600b556064600c55600d80546001600160a01b03191633179055600f805460ff60a01b1916600160a01b179055600354620000c4906127109062000488565b620000d190601e62000466565b601055348015620000e157600080fd5b5060008054336001600160a01b031991821617909155600154600e80546001600160a01b039092169190921681179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200014e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001749190620004ab565b6001600160a01b031663c9c65396600e60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fc9190620004ab565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303816000875af115801562000249573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026f9190620004ab565b600f80546001600160a01b0319166001600160a01b03928316179055306000908152600660209081526040808320600e5485168452825280832060001990558254841680845260078352818420805460ff19908116600190811790925560088552838620805482168317905560025490961685528285208054909616179094556003548484526005835281842081905590519081528392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350620004d6565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200039057816000190482111562000374576200037462000339565b808516156200038257918102915b93841c939080029062000354565b509250929050565b600082620003a95750600162000448565b81620003b85750600062000448565b8160018114620003d15760028114620003dc57620003fc565b600191505062000448565b60ff841115620003f057620003f062000339565b50506001821b62000448565b5060208310610133831016604e8410600b841016171562000421575081810a62000448565b6200042d83836200034f565b806000190482111562000444576200044462000339565b0290505b92915050565b60006200045f60ff84168362000398565b9392505050565b600081600019048311821515161562000483576200048362000339565b500290565b600082620004a657634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620004be57600080fd5b81516001600160a01b03811681146200045f57600080fd5b61170a80620004e66000396000f3fe6080604052600436106101bb5760003560e01c8063715018a6116100ec578063dd62ed3e1161008a578063f1d5f51711610064578063f1d5f5171461055a578063f42938901461057a578063f887ea401461058f578063fb735cdd146105af57600080fd5b8063dd62ed3e146104d4578063e01bb6881461051a578063e96fada21461053a57600080fd5b806395d89b41116100c657806395d89b4114610448578063960bfe0414610474578063a8aa1b3114610494578063a9059cbb146104b457600080fd5b8063715018a6146103e15780637e26d19f146103f6578063893d20e81461041657600080fd5b8063313ce56711610159578063571ac8b011610133578063571ac8b0146103545780636c0a24eb146103745780636ddd17131461038a57806370a08231146103ab57600080fd5b8063313ce567146102e8578063394867e0146103045780633bbac5791461032457600080fd5b80630b78f9c0116101955780630b78f9c01461026257806318160ddd1461028457806323b872dd146102995780632f54bf6e146102b957600080fd5b80630445b667146101c757806306fdde03146101f0578063095ea7b31461023257600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101dd60105481565b6040519081526020015b60405180910390f35b3480156101fc57600080fd5b5060408051808201909152601081526f50726f6f66206f662047656e6573697360801b60208201525b6040516101e791906112ac565b34801561023e57600080fd5b5061025261024d366004611326565b6105cf565b60405190151581526020016101e7565b34801561026e57600080fd5b5061028261027d366004611352565b61063c565b005b34801561029057600080fd5b506003546101dd565b3480156102a557600080fd5b506102526102b4366004611374565b6106db565b3480156102c557600080fd5b506102526102d43660046113b5565b6000546001600160a01b0391821691161490565b3480156102f457600080fd5b50604051600981526020016101e7565b34801561031057600080fd5b5061028261031f3660046113e2565b61079d565b34801561033057600080fd5b5061025261033f3660046113b5565b60096020526000908152604090205460ff1681565b34801561036057600080fd5b5061025261036f3660046113b5565b6107f2565b34801561038057600080fd5b506101dd60045481565b34801561039657600080fd5b50600f5461025290600160a01b900460ff1681565b3480156103b757600080fd5b506101dd6103c63660046113b5565b6001600160a01b031660009081526005602052604090205490565b3480156103ed57600080fd5b50610282610800565b34801561040257600080fd5b50610282610411366004611417565b61086f565b34801561042257600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101e7565b34801561045457600080fd5b50604080518082019091526003815262504f4760e81b6020820152610225565b34801561048057600080fd5b5061028261048f366004611432565b6108b7565b3480156104a057600080fd5b50600f54610430906001600160a01b031681565b3480156104c057600080fd5b506102526104cf366004611326565b6108e6565b3480156104e057600080fd5b506101dd6104ef36600461144b565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561052657600080fd5b506102826105353660046113b5565b6108f3565b34801561054657600080fd5b50600d54610430906001600160a01b031681565b34801561056657600080fd5b50610282610575366004611432565b61093f565b34801561058657600080fd5b5061028261098a565b34801561059b57600080fd5b50600e54610430906001600160a01b031681565b3480156105bb57600080fd5b506102826105ca36600461149a565b6109c6565b3360008181526006602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061062a9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461066f5760405162461bcd60e51b815260040161066690611571565b60405180910390fd5b600a828155600b829055821180159061068b5750600a600b5411155b6106d75760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c6573730000006044820152606401610666565b5050565b6001600160a01b038316600090815260066020908152604080832033845290915281205460001914610788576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600682528381203382529091529190912054610763918490610a5c565b6001600160a01b03851660009081526006602090815260408083203384529091529020555b610793848484610a96565b90505b9392505050565b6000546001600160a01b031633146107c75760405162461bcd60e51b815260040161066690611571565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610636826000196105cf565b6000546001600160a01b0316331461082a5760405162461bcd60e51b815260040161066690611571565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146108995760405162461bcd60e51b815260040161066690611571565b600f8054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b031633146108e15760405162461bcd60e51b815260040161066690611571565b601055565b6000610796338484610a96565b6000546001600160a01b0316331461091d5760405162461bcd60e51b815260040161066690611571565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146109695760405162461bcd60e51b815260040161066690611571565b6103e88160035461097a91906115a7565b61098491906115c6565b60045550565b600d546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156109c3573d6000803e3d6000fd5b50565b6000546001600160a01b031633146109f05760405162461bcd60e51b815260040161066690611571565b60005b8251811015610a57578160096000858481518110610a1357610a136115e8565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610a4f816115fe565b9150506109f3565b505050565b60008184841115610a805760405162461bcd60e51b815260040161066691906112ac565b506000610a8d8486611617565b95945050505050565b60115460009060ff1615610ab657610aaf848484610d3b565b9050610796565b600f546001600160a01b03848116911614801590610ae257506002546001600160a01b03848116911614155b15610b8d576001600160a01b03831660009081526008602052604090205460ff1680610b3357506004546001600160a01b038416600090815260056020526040902054610b3090849061162e565b11155b610b8d5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610666565b6001600160a01b03841660009081526009602052604090205460ff1615610be45760405162461bcd60e51b815260206004820152600b60248201526a426f74204164647265737360a81b6044820152606401610666565b610bec610e21565b15610bf957610bf9610e79565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260059091529190912054610c4b918490610a5c565b6001600160a01b038516600090815260056020908152604080832093909355600790522054829060ff16610cb157600f546001600160a01b0390811690861603610ca257610c9b85846000611050565b9050610cb1565b610cae85846001611050565b90505b6001600160a01b038416600090815260056020526040902054610cd49082611119565b6001600160a01b0380861660008181526005602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d289085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600590915291822054610d8c918490610a5c565b6001600160a01b038086166000908152600560205260408082209390935590851681522054610dbb9083611119565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e0f9086815260200190565b60405180910390a35060019392505050565b600f546000906001600160a01b03163314801590610e42575060115460ff16155b8015610e575750600f54600160a01b900460ff165b8015610e7457506010543060009081526005602052604090205410155b905090565b6011805460ff1916600117905530600090815260056020526040902054601054610ea49060036115a7565b8110610ebb57601054610eb89060036115a7565b90505b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ef057610ef06115e8565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6d9190611646565b81600181518110610f8057610f806115e8565b6001600160a01b039283166020918202929092010152600e5460405163791ac94760e01b815291169063791ac94790610fc6908590600090869030904290600401611663565b600060405180830381600087803b158015610fe057600080fd5b505af1158015610ff4573d6000803e3d6000fd5b5050505067016345785d8a0000471061104257600d546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611040573d6000803e3d6000fd5b505b50506011805460ff19169055565b6000808261107e57611079600c54611073600a548761117890919063ffffffff16565b906111fa565b611099565b611099600c54611073600b548761117890919063ffffffff16565b306000908152600560205260409020549091506110b69082611119565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111079085815260200190565b60405180910390a3610a8d848261123c565b600080611126838561162e565b9050838110156107965760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610666565b60008260000361118a57506000610636565b600061119683856115a7565b9050826111a385836115c6565b146107965760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610666565b600061079683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061127e565b600061079683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a5c565b6000818361129f5760405162461bcd60e51b815260040161066691906112ac565b506000610a8d84866115c6565b600060208083528351808285015260005b818110156112d9578581018301518582016040015282016112bd565b818111156112eb576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146109c357600080fd5b803561132181611301565b919050565b6000806040838503121561133957600080fd5b823561134481611301565b946020939093013593505050565b6000806040838503121561136557600080fd5b50508035926020909101359150565b60008060006060848603121561138957600080fd5b833561139481611301565b925060208401356113a481611301565b929592945050506040919091013590565b6000602082840312156113c757600080fd5b813561079681611301565b8035801515811461132157600080fd5b600080604083850312156113f557600080fd5b823561140081611301565b915061140e602084016113d2565b90509250929050565b60006020828403121561142957600080fd5b610796826113d2565b60006020828403121561144457600080fd5b5035919050565b6000806040838503121561145e57600080fd5b823561146981611301565b9150602083013561147981611301565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156114ad57600080fd5b823567ffffffffffffffff808211156114c557600080fd5b818501915085601f8301126114d957600080fd5b81356020828211156114ed576114ed611484565b8160051b604051601f19603f8301168101818110868211171561151257611512611484565b60405292835281830193508481018201928984111561153057600080fd5b948201945b838610156115555761154686611316565b85529482019493820193611535565b965061156490508782016113d2565b9450505050509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156115c1576115c1611591565b500290565b6000826115e357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006001820161161057611610611591565b5060010190565b60008282101561162957611629611591565b500390565b6000821982111561164157611641611591565b500190565b60006020828403121561165857600080fd5b815161079681611301565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116b35784516001600160a01b03168352938301939183019160010161168e565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122070501d379d278ae30ea3e4581b7c268f98bab03781647232f1cc416792d2fab864736f6c634300080f0033
Deployed Bytecode
0x6080604052600436106101bb5760003560e01c8063715018a6116100ec578063dd62ed3e1161008a578063f1d5f51711610064578063f1d5f5171461055a578063f42938901461057a578063f887ea401461058f578063fb735cdd146105af57600080fd5b8063dd62ed3e146104d4578063e01bb6881461051a578063e96fada21461053a57600080fd5b806395d89b41116100c657806395d89b4114610448578063960bfe0414610474578063a8aa1b3114610494578063a9059cbb146104b457600080fd5b8063715018a6146103e15780637e26d19f146103f6578063893d20e81461041657600080fd5b8063313ce56711610159578063571ac8b011610133578063571ac8b0146103545780636c0a24eb146103745780636ddd17131461038a57806370a08231146103ab57600080fd5b8063313ce567146102e8578063394867e0146103045780633bbac5791461032457600080fd5b80630b78f9c0116101955780630b78f9c01461026257806318160ddd1461028457806323b872dd146102995780632f54bf6e146102b957600080fd5b80630445b667146101c757806306fdde03146101f0578063095ea7b31461023257600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101dd60105481565b6040519081526020015b60405180910390f35b3480156101fc57600080fd5b5060408051808201909152601081526f50726f6f66206f662047656e6573697360801b60208201525b6040516101e791906112ac565b34801561023e57600080fd5b5061025261024d366004611326565b6105cf565b60405190151581526020016101e7565b34801561026e57600080fd5b5061028261027d366004611352565b61063c565b005b34801561029057600080fd5b506003546101dd565b3480156102a557600080fd5b506102526102b4366004611374565b6106db565b3480156102c557600080fd5b506102526102d43660046113b5565b6000546001600160a01b0391821691161490565b3480156102f457600080fd5b50604051600981526020016101e7565b34801561031057600080fd5b5061028261031f3660046113e2565b61079d565b34801561033057600080fd5b5061025261033f3660046113b5565b60096020526000908152604090205460ff1681565b34801561036057600080fd5b5061025261036f3660046113b5565b6107f2565b34801561038057600080fd5b506101dd60045481565b34801561039657600080fd5b50600f5461025290600160a01b900460ff1681565b3480156103b757600080fd5b506101dd6103c63660046113b5565b6001600160a01b031660009081526005602052604090205490565b3480156103ed57600080fd5b50610282610800565b34801561040257600080fd5b50610282610411366004611417565b61086f565b34801561042257600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101e7565b34801561045457600080fd5b50604080518082019091526003815262504f4760e81b6020820152610225565b34801561048057600080fd5b5061028261048f366004611432565b6108b7565b3480156104a057600080fd5b50600f54610430906001600160a01b031681565b3480156104c057600080fd5b506102526104cf366004611326565b6108e6565b3480156104e057600080fd5b506101dd6104ef36600461144b565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561052657600080fd5b506102826105353660046113b5565b6108f3565b34801561054657600080fd5b50600d54610430906001600160a01b031681565b34801561056657600080fd5b50610282610575366004611432565b61093f565b34801561058657600080fd5b5061028261098a565b34801561059b57600080fd5b50600e54610430906001600160a01b031681565b3480156105bb57600080fd5b506102826105ca36600461149a565b6109c6565b3360008181526006602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061062a9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461066f5760405162461bcd60e51b815260040161066690611571565b60405180910390fd5b600a828155600b829055821180159061068b5750600a600b5411155b6106d75760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c6573730000006044820152606401610666565b5050565b6001600160a01b038316600090815260066020908152604080832033845290915281205460001914610788576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600682528381203382529091529190912054610763918490610a5c565b6001600160a01b03851660009081526006602090815260408083203384529091529020555b610793848484610a96565b90505b9392505050565b6000546001600160a01b031633146107c75760405162461bcd60e51b815260040161066690611571565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610636826000196105cf565b6000546001600160a01b0316331461082a5760405162461bcd60e51b815260040161066690611571565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146108995760405162461bcd60e51b815260040161066690611571565b600f8054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b031633146108e15760405162461bcd60e51b815260040161066690611571565b601055565b6000610796338484610a96565b6000546001600160a01b0316331461091d5760405162461bcd60e51b815260040161066690611571565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146109695760405162461bcd60e51b815260040161066690611571565b6103e88160035461097a91906115a7565b61098491906115c6565b60045550565b600d546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156109c3573d6000803e3d6000fd5b50565b6000546001600160a01b031633146109f05760405162461bcd60e51b815260040161066690611571565b60005b8251811015610a57578160096000858481518110610a1357610a136115e8565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610a4f816115fe565b9150506109f3565b505050565b60008184841115610a805760405162461bcd60e51b815260040161066691906112ac565b506000610a8d8486611617565b95945050505050565b60115460009060ff1615610ab657610aaf848484610d3b565b9050610796565b600f546001600160a01b03848116911614801590610ae257506002546001600160a01b03848116911614155b15610b8d576001600160a01b03831660009081526008602052604090205460ff1680610b3357506004546001600160a01b038416600090815260056020526040902054610b3090849061162e565b11155b610b8d5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610666565b6001600160a01b03841660009081526009602052604090205460ff1615610be45760405162461bcd60e51b815260206004820152600b60248201526a426f74204164647265737360a81b6044820152606401610666565b610bec610e21565b15610bf957610bf9610e79565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260059091529190912054610c4b918490610a5c565b6001600160a01b038516600090815260056020908152604080832093909355600790522054829060ff16610cb157600f546001600160a01b0390811690861603610ca257610c9b85846000611050565b9050610cb1565b610cae85846001611050565b90505b6001600160a01b038416600090815260056020526040902054610cd49082611119565b6001600160a01b0380861660008181526005602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d289085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600590915291822054610d8c918490610a5c565b6001600160a01b038086166000908152600560205260408082209390935590851681522054610dbb9083611119565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e0f9086815260200190565b60405180910390a35060019392505050565b600f546000906001600160a01b03163314801590610e42575060115460ff16155b8015610e575750600f54600160a01b900460ff165b8015610e7457506010543060009081526005602052604090205410155b905090565b6011805460ff1916600117905530600090815260056020526040902054601054610ea49060036115a7565b8110610ebb57601054610eb89060036115a7565b90505b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ef057610ef06115e8565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6d9190611646565b81600181518110610f8057610f806115e8565b6001600160a01b039283166020918202929092010152600e5460405163791ac94760e01b815291169063791ac94790610fc6908590600090869030904290600401611663565b600060405180830381600087803b158015610fe057600080fd5b505af1158015610ff4573d6000803e3d6000fd5b5050505067016345785d8a0000471061104257600d546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611040573d6000803e3d6000fd5b505b50506011805460ff19169055565b6000808261107e57611079600c54611073600a548761117890919063ffffffff16565b906111fa565b611099565b611099600c54611073600b548761117890919063ffffffff16565b306000908152600560205260409020549091506110b69082611119565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111079085815260200190565b60405180910390a3610a8d848261123c565b600080611126838561162e565b9050838110156107965760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610666565b60008260000361118a57506000610636565b600061119683856115a7565b9050826111a385836115c6565b146107965760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610666565b600061079683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061127e565b600061079683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a5c565b6000818361129f5760405162461bcd60e51b815260040161066691906112ac565b506000610a8d84866115c6565b600060208083528351808285015260005b818110156112d9578581018301518582016040015282016112bd565b818111156112eb576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146109c357600080fd5b803561132181611301565b919050565b6000806040838503121561133957600080fd5b823561134481611301565b946020939093013593505050565b6000806040838503121561136557600080fd5b50508035926020909101359150565b60008060006060848603121561138957600080fd5b833561139481611301565b925060208401356113a481611301565b929592945050506040919091013590565b6000602082840312156113c757600080fd5b813561079681611301565b8035801515811461132157600080fd5b600080604083850312156113f557600080fd5b823561140081611301565b915061140e602084016113d2565b90509250929050565b60006020828403121561142957600080fd5b610796826113d2565b60006020828403121561144457600080fd5b5035919050565b6000806040838503121561145e57600080fd5b823561146981611301565b9150602083013561147981611301565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156114ad57600080fd5b823567ffffffffffffffff808211156114c557600080fd5b818501915085601f8301126114d957600080fd5b81356020828211156114ed576114ed611484565b8160051b604051601f19603f8301168101818110868211171561151257611512611484565b60405292835281830193508481018201928984111561153057600080fd5b948201945b838610156115555761154686611316565b85529482019493820193611535565b965061156490508782016113d2565b9450505050509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156115c1576115c1611591565b500290565b6000826115e357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006001820161161057611610611591565b5060010190565b60008282101561162957611629611591565b500390565b6000821982111561164157611641611591565b500190565b60006020828403121561165857600080fd5b815161079681611301565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116b35784516001600160a01b03168352938301939183019160010161168e565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122070501d379d278ae30ea3e4581b7c268f98bab03781647232f1cc416792d2fab864736f6c634300080f0033
Deployed Bytecode Sourcemap
4242:7758:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5215:56;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;5215:56:0;;;;;;;;6182:80;;;;;;;;;;-1:-1:-1;6254:5:0;;;;;;;;;;;;-1:-1:-1;;;6254:5:0;;;;6182:80;;;;;;;:::i;6604:216::-;;;;;;;;;;-1:-1:-1;6604:216:0;;;;;:::i;:::-;;:::i;:::-;;;1558:14:1;;1551:22;1533:41;;1521:2;1506:18;6604:216:0;1393:187:1;11390:280:0;;;;;;;;;;-1:-1:-1;11390:280:0;;;;;:::i;:::-;;:::i;:::-;;5912:88;;;;;;;;;;-1:-1:-1;5985:12:0;;5912:88;;7122:370;;;;;;;;;;-1:-1:-1;7122:370:0;;;;;:::i;:::-;;:::i;2480:103::-;;;;;;;;;;-1:-1:-1;2480:103:0;;;;;:::i;:::-;2535:4;2570:5;-1:-1:-1;;;;;2559:16:0;;;2570:5;;2559:16;;2480:103;6006:80;;;;;;;;;;-1:-1:-1;6006:80:0;;4566:1;2693:36:1;;2681:2;2666:18;6006:80:0;2551:184:1;11071:119:0;;;;;;;;;;-1:-1:-1;11071:119:0;;;;;:::i;:::-;;:::i;4911:37::-;;;;;;;;;;-1:-1:-1;4911:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;6828:122;;;;;;;;;;-1:-1:-1;6828:122:0;;;;;:::i;:::-;;:::i;4639:56::-;;;;;;;;;;;;;;;;5178:30;;;;;;;;;;-1:-1:-1;5178:30:0;;;;-1:-1:-1;;;5178:30:0;;;;;;6352:105;;;;;;;;;;-1:-1:-1;6352:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;6436:18:0;6418:7;6436:18;;;:9;:18;;;;;;;6352:105;2589:131;;;;;;;;;;;;;:::i;10971:92::-;;;;;;;;;;-1:-1:-1;10971:92:0;;;;;:::i;:::-;;:::i;6268:78::-;;;;;;;;;;-1:-1:-1;6320:7:0;6338:5;-1:-1:-1;;;;;6338:5:0;6268:78;;;-1:-1:-1;;;;;3574:32:1;;;3556:51;;3544:2;3529:18;6268:78:0;3410:203:1;6092:84:0;;;;;;;;;;-1:-1:-1;6166:7:0;;;;;;;;;;;;-1:-1:-1;;;6166:7:0;;;;6092:84;;11678:105;;;;;;;;;;-1:-1:-1;11678:105:0;;;;;:::i;:::-;;:::i;5150:19::-;;;;;;;;;;-1:-1:-1;5150:19:0;;;;-1:-1:-1;;;;;5150:19:0;;;6958:156;;;;;;;;;;-1:-1:-1;6958:156:0;;;;;:::i;:::-;;:::i;6463:133::-;;;;;;;;;;-1:-1:-1;6463:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;6565:19:0;;;6547:7;6565:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;6463:133;11791:138;;;;;;;;;;-1:-1:-1;11791:138:0;;;;;:::i;:::-;;:::i;5062:48::-;;;;;;;;;;-1:-1:-1;5062:48:0;;;;-1:-1:-1;;;;;5062:48:0;;;10821:142;;;;;;;;;;-1:-1:-1;10821:142:0;;;;;:::i;:::-;;:::i;10702:111::-;;;;;;;;;;;;;:::i;5119:24::-;;;;;;;;;;-1:-1:-1;5119:24:0;;;;-1:-1:-1;;;;;5119:24:0;;;11197:185;;;;;;;;;;-1:-1:-1;11197:185:0;;;;;:::i;:::-;;:::i;6604:216::-;6708:10;6679:4;6696:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;6696:32:0;;;;;;;;;;:41;;;6753:37;6679:4;;6696:32;;6753:37;;;;6731:6;160:25:1;;148:2;133:18;;14:177;6753:37:0;;;;;;;;-1:-1:-1;6808:4:0;6604:216;;;;;:::o;11390:280::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;;;;;;;;;11488:12:::1;:28:::0;;;11528:16:::1;:36:::0;;;11584:18;::::1;::::0;::::1;::::0;:44:::1;;;11626:2;11606:16;;:22;;11584:44;11576:86;;;::::0;-1:-1:-1;;;11576:86:0;;6286:2:1;11576:86:0::1;::::0;::::1;6268:21:1::0;6325:2;6305:18;;;6298:30;6364:31;6344:18;;;6337:59;6413:18;;11576:86:0::1;6084:353:1::0;11576:86:0::1;11390:280:::0;;:::o;7122:370::-;-1:-1:-1;;;;;7242:19:0;;7222:4;7242:19;;;:11;:19;;;;;;;;7262:10;7242:31;;;;;;;;-1:-1:-1;;7242:52:0;7239:186;;7344:69;;;;;;;;;;;-1:-1:-1;;;7344:69:0;;;;;;;;-1:-1:-1;;;;;7344:19:0;;-1:-1:-1;7344:19:0;;;:11;:19;;;;;7364:10;7344:31;;;;;;;;;;:69;;7380:6;;7344:35;:69::i;:::-;-1:-1:-1;;;;;7310:19:0;;;;;;:11;:19;;;;;;;;7330:10;7310:31;;;;;;;:103;7239:186;7444:40;7458:6;7466:9;7477:6;7444:13;:40::i;:::-;7437:47;;7122:370;;;;;;:::o;11071:119::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11156:17:0;;;::::1;;::::0;;;:5:::1;:17;::::0;;;;:26;;-1:-1:-1;;11156:26:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11071:119::o;6828:122::-;6883:4;6907:35;6915:7;-1:-1:-1;;6907:7:0;:35::i;2589:131::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;2662:1:::1;2646:18:::0;;-1:-1:-1;;;;;;2646:18:0::1;::::0;;2680:32:::1;::::0;3556:51:1;;;2680:32:0::1;::::0;3544:2:1;3529:18;2680:32:0::1;;;;;;;2589:131::o:0;10971:92::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;11035:11:::1;:20:::0;;;::::1;;-1:-1:-1::0;;;11035:20:0::1;-1:-1:-1::0;;;;11035:20:0;;::::1;::::0;;;::::1;::::0;;10971:92::o;11678:105::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;11750:13:::1;:25:::0;11678:105::o;6958:156::-;7038:4;7062:44;7076:10;7088:9;7099:6;7062:13;:44::i;11791:138::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;11877:20:::1;:44:::0;;-1:-1:-1;;;;;;11877:44:0::1;-1:-1:-1::0;;;;;11877:44:0;;;::::1;::::0;;;::::1;::::0;;11791:138::o;10821:142::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;10951:4:::1;10933:13;10918:12;;:28;;;;:::i;:::-;10917:38;;;;:::i;:::-;10898:16;:57:::0;-1:-1:-1;10821:142:0:o;10702:111::-;10752:20;;10744:61;;-1:-1:-1;;;;;10752:20:0;;;;10783:21;10744:61;;;;;10752:20;10744:61;10752:20;10744:61;10783:21;10752:20;10744:61;;;;;;;;;;;;;;;;;;;;;10702:111::o;11197:185::-;2535:4;2570:5;-1:-1:-1;;;;;2570:5:0;2441:10;2559:16;2425:38;;;;-1:-1:-1;;;2425:38:0;;;;;;;:::i;:::-;11286:9:::1;11281:94;11305:5;:12;11301:1;:16;11281:94;;;11357:6;11339:5;:15;11345:5;11351:1;11345:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11339:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11339:15:0;:24;;-1:-1:-1;;11339:24:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11319:3;::::1;::::0;::::1;:::i;:::-;;;;11281:94;;;;11197:185:::0;;:::o;569:190::-;655:7;691:12;683:6;;;;675:29;;;;-1:-1:-1;;;675:29:0;;;;;;;;:::i;:::-;-1:-1:-1;715:9:0;727:5;731:1;727;:5;:::i;:::-;715:17;569:190;-1:-1:-1;;;;;569:190:0:o;7500:1043::-;7612:6;;7592:4;;7612:6;;7609:63;;;7628:41;7643:6;7651:9;7662:6;7628:14;:41::i;:::-;7621:48;;;;7609:63;7709:4;;-1:-1:-1;;;;;7696:17:0;;;7709:4;;7696:17;;;;:38;;-1:-1:-1;7730:4:0;;-1:-1:-1;;;;;7717:17:0;;;7730:4;;7717:17;;7696:38;7692:200;;;-1:-1:-1;;;;;7759:26:0;;;;;;:15;:26;;;;;;;;;:79;;-1:-1:-1;7822:16:0;;-1:-1:-1;;;;;7789:20:0;;;;;;:9;:20;;;;;;:29;;7812:6;;7789:29;:::i;:::-;:49;;7759:79;7751:129;;;;-1:-1:-1;;;7751:129:0;;7706:2:1;7751:129:0;;;7688:21:1;7745:2;7725:18;;;7718:30;7784:34;7764:18;;;7757:62;-1:-1:-1;;;7835:18:1;;;7828:35;7880:19;;7751:129:0;7504:401:1;7751:129:0;-1:-1:-1;;;;;7921:13:0;;;;;;:5;:13;;;;;;;;7920:14;7912:38;;;;-1:-1:-1;;;7912:38:0;;8112:2:1;7912:38:0;;;8094:21:1;8151:2;8131:18;;;8124:30;-1:-1:-1;;;8170:18:1;;;8163:41;8221:18;;7912:38:0;7910:335:1;7912:38:0;7966:16;:14;:16::i;:::-;7963:35;;;7985:10;:8;:10::i;:::-;8031:53;;;;;;;;;;;-1:-1:-1;;;8031:53:0;;;;;;;;-1:-1:-1;;;;;8031:17:0;;-1:-1:-1;8031:17:0;;;:9;:17;;;;;;;;:53;;8053:6;;8031:21;:53::i;:::-;-1:-1:-1;;;;;8011:17:0;;;;;;:9;:17;;;;;;;;:73;;;;8980:11;:19;;;;8123:6;;8980:19;;8140:235;;8193:4;;-1:-1:-1;;;;;8193:4:0;;;8183:14;;;;8180:183;;8234:29;8242:6;8250;8257:5;8234:7;:29::i;:::-;8217:46;;8180:183;;;8319:28;8327:6;8335;8342:4;8319:7;:28::i;:::-;8302:45;;8180:183;-1:-1:-1;;;;;8412:20:0;;;;;;:9;:20;;;;;;:40;;8437:14;8412:24;:40::i;:::-;-1:-1:-1;;;;;8389:20:0;;;;;;;:9;:20;;;;;;;:63;;;;8470:43;;;;;;;;;;8498:14;160:25:1;;148:2;133:18;;14:177;8470:43:0;;;;;;;;-1:-1:-1;8531:4:0;;7500:1043;-1:-1:-1;;;;7500:1043:0:o;8555:330::-;8685:53;;;;;;;;;;;-1:-1:-1;;;8685:53:0;;;;;;;;-1:-1:-1;;;;;8685:17:0;;8648:4;8685:17;;;:9;:17;;;;;;;:53;;8707:6;;8685:21;:53::i;:::-;-1:-1:-1;;;;;8665:17:0;;;;;;;:9;:17;;;;;;:73;;;;8772:20;;;;;;;:32;;8797:6;8772:24;:32::i;:::-;-1:-1:-1;;;;;8749:20:0;;;;;;;:9;:20;;;;;;;:55;;;;8820:35;;;;;;;;;;8848:6;160:25:1;;148:2;133:18;;14:177;8820:35:0;;;;;;;;-1:-1:-1;8873:4:0;8555:330;;;;;:::o;9426:197::-;9513:4;;9475;;-1:-1:-1;;;;;9513:4:0;9499:10;:18;;;;:38;;-1:-1:-1;9531:6:0;;;;9530:7;9499:38;:62;;;;-1:-1:-1;9550:11:0;;-1:-1:-1;;;9550:11:0;;;;9499:62;:116;;;;-1:-1:-1;9602:13:0;;9592:4;9574:24;;;;:9;:24;;;;;;:41;;9499:116;9492:123;;9426:197;:::o;9631:685::-;5319:6;:13;;-1:-1:-1;;5319:13:0;5328:4;5319:13;;;9721:4:::1;5319:6:::0;9703:24;;;:9:::1;:24;::::0;;;;;9759:13:::1;::::0;:15:::1;::::0;9773:1:::1;9759:15;:::i;:::-;9742:12;:33;9738:95;;9806:13;::::0;:15:::1;::::0;9820:1:::1;9806:15;:::i;:::-;9791:30;;9738:95;9867:16;::::0;;9881:1:::1;9867:16:::0;;;;;::::1;::::0;;9843:21:::1;::::0;9867:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9867:16:0::1;9843:40;;9912:4;9894;9899:1;9894:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9894:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9938:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;9938:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;9894:7;;9938:13;;;;;:6;:13:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9928:4;9933:1;9928:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9928:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;9964:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;9964:188:0;;:6;::::1;::::0;:57:::1;::::0;:188:::1;::::0;10036:12;;9964:6:::1;::::0;10079:4;;10106::::1;::::0;10126:15:::1;::::0;9964:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10194:18;10169:21;:43;10165:136;;10236:20;::::0;10228:61:::1;::::0;-1:-1:-1;;;;;10236:20:0;;::::1;::::0;10267:21:::1;10228:61:::0;::::1;;;::::0;10236:20:::1;10228:61:::0;10236:20;10228:61;10267:21;10236:20;10228:61;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10165:136;-1:-1:-1::0;;5337:6:0;:14;;-1:-1:-1;;5337:14:0;;;9631:685::o;9015:403::-;9095:7;9115:14;9132:6;:104;;9192:44;9221:14;;9192:24;9203:12;;9192:6;:10;;:24;;;;:::i;:::-;:28;;:44::i;:::-;9132:104;;;9141:48;9174:14;;9141:28;9152:16;;9141:6;:10;;:28;;;;:::i;:48::-;9292:4;9274:24;;;;:9;:24;;;;;;9115:121;;-1:-1:-1;9274:39:0;;9115:121;9274:28;:39::i;:::-;9265:4;9247:24;;;;:9;:24;;;;;;;:66;;;;9329:42;;-1:-1:-1;;;;;9329:42:0;;;;;;;9361:9;160:25:1;;148:2;133:18;;14:177;9329:42:0;;;;;;;;9389:21;:6;9400:9;9389:10;:21::i;242:179::-;300:7;;332:5;336:1;332;:5;:::i;:::-;320:17;;361:1;356;:6;;348:46;;;;-1:-1:-1;;;348:46:0;;9693:2:1;348:46:0;;;9675:21:1;9732:2;9712:18;;;9705:30;9771:29;9751:18;;;9744:57;9818:18;;348:46:0;9491:351:1;765:246:0;823:7;847:1;852;847:6;843:47;;-1:-1:-1;877:1:0;870:8;;843:47;900:9;912:5;916:1;912;:5;:::i;:::-;900:17;-1:-1:-1;945:1:0;936:5;940:1;900:17;936:5;:::i;:::-;:10;928:56;;;;-1:-1:-1;;;928:56:0;;10049:2:1;928:56:0;;;10031:21:1;10088:2;10068:18;;;10061:30;10127:34;10107:18;;;10100:62;-1:-1:-1;;;10178:18:1;;;10171:31;10219:19;;928:56:0;9847:397:1;1017:132:0;1075:7;1102:39;1106:1;1109;1102:39;;;;;;;;;;;;;;;;;:3;:39::i;427:136::-;485:7;512:43;516:1;519;512:43;;;;;;;;;;;;;;;;;:3;:43::i;1155:189::-;1241:7;1276:12;1269:5;1261:28;;;;-1:-1:-1;;;1261:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1300:9:0;1312:5;1316:1;1312;:5;:::i;196:597:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;634:6;631:1;628:13;625:91;;;704:1;699:2;690:6;679:9;675:22;671:31;664:42;625:91;-1:-1:-1;777:2:1;756:15;-1:-1:-1;;752:29:1;737:45;;;;784:2;733:54;;196:597;-1:-1:-1;;;196:597:1:o;798:131::-;-1:-1:-1;;;;;873:31:1;;863:42;;853:70;;919:1;916;909:12;934:134;1002:20;;1031:31;1002:20;1031:31;:::i;:::-;934:134;;;:::o;1073:315::-;1141:6;1149;1202:2;1190:9;1181:7;1177:23;1173:32;1170:52;;;1218:1;1215;1208:12;1170:52;1257:9;1244:23;1276:31;1301:5;1276:31;:::i;:::-;1326:5;1378:2;1363:18;;;;1350:32;;-1:-1:-1;;;1073:315:1:o;1585:248::-;1653:6;1661;1714:2;1702:9;1693:7;1689:23;1685:32;1682:52;;;1730:1;1727;1720:12;1682:52;-1:-1:-1;;1753:23:1;;;1823:2;1808:18;;;1795:32;;-1:-1:-1;1585:248:1:o;1838:456::-;1915:6;1923;1931;1984:2;1972:9;1963:7;1959:23;1955:32;1952:52;;;2000:1;1997;1990:12;1952:52;2039:9;2026:23;2058:31;2083:5;2058:31;:::i;:::-;2108:5;-1:-1:-1;2165:2:1;2150:18;;2137:32;2178:33;2137:32;2178:33;:::i;:::-;1838:456;;2230:7;;-1:-1:-1;;;2284:2:1;2269:18;;;;2256:32;;1838:456::o;2299:247::-;2358:6;2411:2;2399:9;2390:7;2386:23;2382:32;2379:52;;;2427:1;2424;2417:12;2379:52;2466:9;2453:23;2485:31;2510:5;2485:31;:::i;2740:160::-;2805:20;;2861:13;;2854:21;2844:32;;2834:60;;2890:1;2887;2880:12;2905:315;2970:6;2978;3031:2;3019:9;3010:7;3006:23;3002:32;2999:52;;;3047:1;3044;3037:12;2999:52;3086:9;3073:23;3105:31;3130:5;3105:31;:::i;:::-;3155:5;-1:-1:-1;3179:35:1;3210:2;3195:18;;3179:35;:::i;:::-;3169:45;;2905:315;;;;;:::o;3225:180::-;3281:6;3334:2;3322:9;3313:7;3309:23;3305:32;3302:52;;;3350:1;3347;3340:12;3302:52;3373:26;3389:9;3373:26;:::i;3618:180::-;3677:6;3730:2;3718:9;3709:7;3705:23;3701:32;3698:52;;;3746:1;3743;3736:12;3698:52;-1:-1:-1;3769:23:1;;3618:180;-1:-1:-1;3618:180:1:o;3803:388::-;3871:6;3879;3932:2;3920:9;3911:7;3907:23;3903:32;3900:52;;;3948:1;3945;3938:12;3900:52;3987:9;3974:23;4006:31;4031:5;4006:31;:::i;:::-;4056:5;-1:-1:-1;4113:2:1;4098:18;;4085:32;4126:33;4085:32;4126:33;:::i;:::-;4178:7;4168:17;;;3803:388;;;;;:::o;4422:127::-;4483:10;4478:3;4474:20;4471:1;4464:31;4514:4;4511:1;4504:15;4538:4;4535:1;4528:15;4554:1191;4644:6;4652;4705:2;4693:9;4684:7;4680:23;4676:32;4673:52;;;4721:1;4718;4711:12;4673:52;4761:9;4748:23;4790:18;4831:2;4823:6;4820:14;4817:34;;;4847:1;4844;4837:12;4817:34;4885:6;4874:9;4870:22;4860:32;;4930:7;4923:4;4919:2;4915:13;4911:27;4901:55;;4952:1;4949;4942:12;4901:55;4988:2;4975:16;5010:4;5033:2;5029;5026:10;5023:36;;;5039:18;;:::i;:::-;5085:2;5082:1;5078:10;5117:2;5111:9;5180:2;5176:7;5171:2;5167;5163:11;5159:25;5151:6;5147:38;5235:6;5223:10;5220:22;5215:2;5203:10;5200:18;5197:46;5194:72;;;5246:18;;:::i;:::-;5282:2;5275:22;5332:18;;;5366:15;;;;-1:-1:-1;5408:11:1;;;5404:20;;;5436:19;;;5433:39;;;5468:1;5465;5458:12;5433:39;5492:11;;;;5512:148;5528:6;5523:3;5520:15;5512:148;;;5594:23;5613:3;5594:23;:::i;:::-;5582:36;;5545:12;;;;5638;;;;5512:148;;;5679:6;-1:-1:-1;5704:35:1;;-1:-1:-1;5720:18:1;;;5704:35;:::i;:::-;5694:45;;;;;;4554:1191;;;;;:::o;5750:329::-;5952:2;5934:21;;;5991:1;5971:18;;;5964:29;-1:-1:-1;;;6024:2:1;6009:18;;6002:36;6070:2;6055:18;;5750:329::o;6442:127::-;6503:10;6498:3;6494:20;6491:1;6484:31;6534:4;6531:1;6524:15;6558:4;6555:1;6548:15;6574:168;6614:7;6680:1;6676;6672:6;6668:14;6665:1;6662:21;6657:1;6650:9;6643:17;6639:45;6636:71;;;6687:18;;:::i;:::-;-1:-1:-1;6727:9:1;;6574:168::o;6747:217::-;6787:1;6813;6803:132;;6857:10;6852:3;6848:20;6845:1;6838:31;6892:4;6889:1;6882:15;6920:4;6917:1;6910:15;6803:132;-1:-1:-1;6949:9:1;;6747:217::o;6969:127::-;7030:10;7025:3;7021:20;7018:1;7011:31;7061:4;7058:1;7051:15;7085:4;7082:1;7075:15;7101:135;7140:3;7161:17;;;7158:43;;7181:18;;:::i;:::-;-1:-1:-1;7228:1:1;7217:13;;7101:135::o;7241:125::-;7281:4;7309:1;7306;7303:8;7300:34;;;7314:18;;:::i;:::-;-1:-1:-1;7351:9:1;;7241:125::o;7371:128::-;7411:3;7442:1;7438:6;7435:1;7432:13;7429:39;;;7448:18;;:::i;:::-;-1:-1:-1;7484:9:1;;7371:128::o;8250:251::-;8320:6;8373:2;8361:9;8352:7;8348:23;8344:32;8341:52;;;8389:1;8386;8379:12;8341:52;8421:9;8415:16;8440:31;8465:5;8440:31;:::i;8506:980::-;8768:4;8816:3;8805:9;8801:19;8847:6;8836:9;8829:25;8873:2;8911:6;8906:2;8895:9;8891:18;8884:34;8954:3;8949:2;8938:9;8934:18;8927:31;8978:6;9013;9007:13;9044:6;9036;9029:22;9082:3;9071:9;9067:19;9060:26;;9121:2;9113:6;9109:15;9095:29;;9142:1;9152:195;9166:6;9163:1;9160:13;9152:195;;;9231:13;;-1:-1:-1;;;;;9227:39:1;9215:52;;9322:15;;;;9287:12;;;;9263:1;9181:9;9152:195;;;-1:-1:-1;;;;;;;9403:32:1;;;;9398:2;9383:18;;9376:60;-1:-1:-1;;;9467:3:1;9452:19;9445:35;9364:3;8506:980;-1:-1:-1;;;8506:980:1:o
Swarm Source
ipfs://70501d379d278ae30ea3e4581b7c268f98bab03781647232f1cc416792d2fab8
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.