Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000 ePIZZA
Holders
50
Total Transfers
-
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
ETHPIZZA
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-05-22 */ // SPDX-License-Identifier: UNLICENSED /* “Pizza For ETH” https://twitter.com/EthPizza https://ethpizza.day/ https://t.me/ethpizzaportal */ pragma solidity ^0.8.4; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract ETHPIZZA is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private bots; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 1000000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _tfee; uint256 private _mfee; uint256 private _sellFee; uint256 private _buyFee; address payable private _feeAddress; string private constant _name = "ETH PIZZA"; string private constant _symbol = "ePIZZA"; uint8 private constant _decimals = 9; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingStarted; bool private inSwap = false; bool private swapEnable = false; bool private removeMaxTxn = false; uint256 private _maxTxAmount = _tTotal; uint256 private _maxHeldAmount = _tTotal; event MaxTxAmountUpdated(uint _maxHeldAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _buyFee = 8; _sellFee = 8; _feeAddress = payable(_msgSender()); _rOwned[address(this)] = _rTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_feeAddress] = true; emit Transfer(address(0), address(this), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(_rOwned[account]); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function setRemoveMaxTxn(bool onoff) external onlyOwner() { removeMaxTxn = onoff; } function tokenFromReflection(uint256 rAmount) private view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); require(!bots[from]&& !bots[to]); if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to] ) { _tfee = 0; _mfee = _buyFee; if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && removeMaxTxn) { uint walletBalance = balanceOf(address(to)); require(amount <= _maxTxAmount); require(amount.add(walletBalance) <= _maxHeldAmount); } if (to == uniswapV2Pair && from != address(uniswapV2Router) && ! _isExcludedFromFee[from]) { _tfee = 0; _mfee = _sellFee; } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && from != uniswapV2Pair && swapEnable) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } _tokenTransfer(from,to,amount); } function _setMaxTxAmount(uint256 maxTxAmount , uint256 maxHeldAmount) external onlyOwner() { _maxTxAmount = maxTxAmount; _maxHeldAmount = maxHeldAmount; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendETHToFee(uint256 amount) private { _feeAddress.transfer(amount); } function createPair() external onlyOwner(){ require(!tradingStarted,"trading is already open"); IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); } function openTrading() external onlyOwner() { _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); swapEnable = true; removeMaxTxn = true; _maxTxAmount = 20000000 * 10**9; _maxHeldAmount = 20000000 * 10**9; tradingStarted = true; IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } function setBots(address[] memory bots_) public onlyOwner { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBot(address notbot) public onlyOwner { bots[notbot] = false; } function _tokenTransfer(address sender, address recipient, uint256 amount) private { _transferStandard(sender, recipient, amount); } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable {} function manualswap() public onlyOwner() { uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() public onlyOwner() { uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _tfee, _mfee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tTeam = tAmount.mul(TeamFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function setFee(uint256 buyFee, uint256 sellFee)external onlyOwner() { _buyFee = buyFee; _sellFee = sellFee; } function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxHeldAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"},{"internalType":"uint256","name":"maxHeldAmount","type":"uint256"}],"name":"_setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyFee","type":"uint256"},{"internalType":"uint256","name":"sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setRemoveMaxTxn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052610018670de0b6b3a7640000600019610175565b61002490600019610150565b600755600f805462ffffff60a81b19169055670de0b6b3a7640000601081905560115534801561005357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506008600c819055600b55600d80546001600160a01b031916331781556007543060008181526002602090815260408083209490945581546001600160a01b03908116835260058252848320805460ff1990811660019081179092558585528685208054821683179055965490911683528483208054909616179094559151670de0b6b3a7640000815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610197565b60008282101561017057634e487b7160e01b600052601160045260246000fd5b500390565b60008261019257634e487b7160e01b600052601260045260246000fd5b500690565b611b0880620001a76000396000f3fe6080604052600436106101235760003560e01c8063715018a6116100a0578063a9059cbb11610064578063a9059cbb1461033c578063b515566a1461035c578063c3c8cd801461037c578063c9567bf914610391578063dd62ed3e146103a657600080fd5b8063715018a61461029b578063733ec069146102b05780638da5cb5b146102d057806395d89b41146102f85780639e78fb4f1461032757600080fd5b80632b51106a116100e75780632b51106a1461020a578063313ce5671461022a57806352f7c988146102465780636fc3eaec1461026657806370a082311461027b57600080fd5b806306fdde031461012f578063095ea7b31461017357806318160ddd146101a357806323b872dd146101c8578063273123b7146101e857600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b506040805180820190915260098152684554482050495a5a4160b81b60208201525b60405161016a91906118bf565b60405180910390f35b34801561017f57600080fd5b5061019361018e36600461173d565b6103ec565b604051901515815260200161016a565b3480156101af57600080fd5b50670de0b6b3a76400005b60405190815260200161016a565b3480156101d457600080fd5b506101936101e33660046116fc565b610403565b3480156101f457600080fd5b50610208610203366004611689565b61046c565b005b34801561021657600080fd5b50610208610225366004611835565b6104c0565b34801561023657600080fd5b506040516009815260200161016a565b34801561025257600080fd5b5061020861026136600461186f565b610508565b34801561027257600080fd5b5061020861053d565b34801561028757600080fd5b506101ba610296366004611689565b610574565b3480156102a757600080fd5b50610208610596565b3480156102bc57600080fd5b506102086102cb36600461186f565b61060a565b3480156102dc57600080fd5b506000546040516001600160a01b03909116815260200161016a565b34801561030457600080fd5b506040805180820190915260068152656550495a5a4160d01b602082015261015d565b34801561033357600080fd5b5061020861063f565b34801561034857600080fd5b5061019361035736600461173d565b61087e565b34801561036857600080fd5b50610208610377366004611769565b61088b565b34801561038857600080fd5b50610208610921565b34801561039d57600080fd5b50610208610961565b3480156103b257600080fd5b506101ba6103c13660046116c3565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006103f9338484610b2c565b5060015b92915050565b6000610410848484610c50565b610462843361045d85604051806060016040528060288152602001611aab602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610f93565b610b2c565b5060019392505050565b6000546001600160a01b0316331461049f5760405162461bcd60e51b815260040161049690611914565b60405180910390fd5b6001600160a01b03166000908152600660205260409020805460ff19169055565b6000546001600160a01b031633146104ea5760405162461bcd60e51b815260040161049690611914565b600f8054911515600160b81b0260ff60b81b19909216919091179055565b6000546001600160a01b031633146105325760405162461bcd60e51b815260040161049690611914565b600c91909155600b55565b6000546001600160a01b031633146105675760405162461bcd60e51b815260040161049690611914565b4761057181610fcd565b50565b6001600160a01b0381166000908152600260205260408120546103fd90611007565b6000546001600160a01b031633146105c05760405162461bcd60e51b815260040161049690611914565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106345760405162461bcd60e51b815260040161049690611914565b601091909155601155565b6000546001600160a01b031633146106695760405162461bcd60e51b815260040161049690611914565b600f54600160a01b900460ff16156106c35760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610496565b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b81529051829163c45a0155916004808301926020929190829003018186803b15801561072357600080fd5b505afa158015610737573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075b91906116a6565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a357600080fd5b505afa1580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107db91906116a6565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561082357600080fd5b505af1158015610837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085b91906116a6565b600f80546001600160a01b0319166001600160a01b039290921691909117905550565b60006103f9338484610c50565b6000546001600160a01b031633146108b55760405162461bcd60e51b815260040161049690611914565b60005b815181101561091d576001600660008484815181106108d9576108d9611a5b565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061091581611a2a565b9150506108b8565b5050565b6000546001600160a01b0316331461094b5760405162461bcd60e51b815260040161049690611914565b600061095630610574565b90506105718161108b565b6000546001600160a01b0316331461098b5760405162461bcd60e51b815260040161049690611914565b600e546109ab9030906001600160a01b0316670de0b6b3a7640000610b2c565b600e546001600160a01b031663f305d71947306109c781610574565b6000806109dc6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610a3f57600080fd5b505af1158015610a53573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a789190611891565b5050600f805466470de4df820000601081905560115563ffff00ff60a01b198116630101000160a01b17909155600e5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b158015610af457600080fd5b505af1158015610b08573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105719190611852565b6001600160a01b038316610b8e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610496565b6001600160a01b038216610bef5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610496565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610cb45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610496565b6001600160a01b038216610d165760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610496565b60008111610d785760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610496565b6001600160a01b03831660009081526006602052604090205460ff16158015610dba57506001600160a01b03821660009081526006602052604090205460ff16155b610dc357600080fd5b6001600160a01b03831660009081526005602052604090205460ff16158015610e0557506001600160a01b03821660009081526005602052604090205460ff16155b15610f83576000600955600c54600a55600f546001600160a01b038481169116148015610e405750600e546001600160a01b03838116911614155b8015610e6557506001600160a01b03821660009081526005602052604090205460ff16155b8015610e7a5750600f54600160b81b900460ff165b15610eb5576000610e8a83610574565b9050601054821115610e9b57600080fd5b601154610ea88383611214565b1115610eb357600080fd5b505b600f546001600160a01b038381169116148015610ee05750600e546001600160a01b03848116911614155b8015610f0557506001600160a01b03831660009081526005602052604090205460ff16155b15610f16576000600955600b54600a555b6000610f2130610574565b600f54909150600160a81b900460ff16158015610f4c5750600f546001600160a01b03858116911614155b8015610f615750600f54600160b01b900460ff165b15610f8157610f6f8161108b565b478015610f7f57610f7f47610fcd565b505b505b610f8e838383611273565b505050565b60008184841115610fb75760405162461bcd60e51b815260040161049691906118bf565b506000610fc48486611a13565b95945050505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561091d573d6000803e3d6000fd5b600060075482111561106e5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610496565b600061107861127e565b905061108483826112a1565b9392505050565b600f805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106110d3576110d3611a5b565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561112757600080fd5b505afa15801561113b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115f91906116a6565b8160018151811061117257611172611a5b565b6001600160a01b039283166020918202929092010152600e546111989130911684610b2c565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac947906111d1908590600090869030904290600401611949565b600060405180830381600087803b1580156111eb57600080fd5b505af11580156111ff573d6000803e3d6000fd5b5050600f805460ff60a81b1916905550505050565b60008061122183856119ba565b9050838110156110845760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610496565b610f8e8383836112e3565b600080600061128b6113da565b909250905061129a82826112a1565b9250505090565b600061108483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061141a565b6000806000806000806112f587611448565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061132790876114a5565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546113569086611214565b6001600160a01b038916600090815260026020526040902055611378816114e7565b6113828483611531565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516113c791815260200190565b60405180910390a3505050505050505050565b6007546000908190670de0b6b3a76400006113f582826112a1565b82101561141157505060075492670de0b6b3a764000092509050565b90939092509050565b6000818361143b5760405162461bcd60e51b815260040161049691906118bf565b506000610fc484866119d2565b60008060008060008060008060006114658a600954600a54611555565b925092509250600061147561127e565b905060008060006114888e8787876115aa565b919e509c509a509598509396509194505050505091939550919395565b600061108483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f93565b60006114f161127e565b905060006114ff83836115fa565b3060009081526002602052604090205490915061151c9082611214565b30600090815260026020526040902055505050565b60075461153e90836114a5565b60075560085461154e9082611214565b6008555050565b600080808061156f606461156989896115fa565b906112a1565b9050600061158260646115698a896115fa565b9050600061159a826115948b866114a5565b906114a5565b9992985090965090945050505050565b60008080806115b988866115fa565b905060006115c788876115fa565b905060006115d588886115fa565b905060006115e78261159486866114a5565b939b939a50919850919650505050505050565b600082611609575060006103fd565b600061161583856119f4565b90508261162285836119d2565b146110845760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610496565b803561168481611a87565b919050565b60006020828403121561169b57600080fd5b813561108481611a87565b6000602082840312156116b857600080fd5b815161108481611a87565b600080604083850312156116d657600080fd5b82356116e181611a87565b915060208301356116f181611a87565b809150509250929050565b60008060006060848603121561171157600080fd5b833561171c81611a87565b9250602084013561172c81611a87565b929592945050506040919091013590565b6000806040838503121561175057600080fd5b823561175b81611a87565b946020939093013593505050565b6000602080838503121561177c57600080fd5b823567ffffffffffffffff8082111561179457600080fd5b818501915085601f8301126117a857600080fd5b8135818111156117ba576117ba611a71565b8060051b604051601f19603f830116810181811085821117156117df576117df611a71565b604052828152858101935084860182860187018a10156117fe57600080fd5b600095505b838610156118285761181481611679565b855260019590950194938601938601611803565b5098975050505050505050565b60006020828403121561184757600080fd5b813561108481611a9c565b60006020828403121561186457600080fd5b815161108481611a9c565b6000806040838503121561188257600080fd5b50508035926020909101359150565b6000806000606084860312156118a657600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b818110156118ec578581018301518582016040015282016118d0565b818111156118fe576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119995784516001600160a01b031683529383019391830191600101611974565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156119cd576119cd611a45565b500190565b6000826119ef57634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611a0e57611a0e611a45565b500290565b600082821015611a2557611a25611a45565b500390565b6000600019821415611a3e57611a3e611a45565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461057157600080fd5b801515811461057157600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209c25d52227fab18bbce6659fcdc94cd254fa452435536e3c973bc407c498145564736f6c63430008070033
Deployed Bytecode
0x6080604052600436106101235760003560e01c8063715018a6116100a0578063a9059cbb11610064578063a9059cbb1461033c578063b515566a1461035c578063c3c8cd801461037c578063c9567bf914610391578063dd62ed3e146103a657600080fd5b8063715018a61461029b578063733ec069146102b05780638da5cb5b146102d057806395d89b41146102f85780639e78fb4f1461032757600080fd5b80632b51106a116100e75780632b51106a1461020a578063313ce5671461022a57806352f7c988146102465780636fc3eaec1461026657806370a082311461027b57600080fd5b806306fdde031461012f578063095ea7b31461017357806318160ddd146101a357806323b872dd146101c8578063273123b7146101e857600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b506040805180820190915260098152684554482050495a5a4160b81b60208201525b60405161016a91906118bf565b60405180910390f35b34801561017f57600080fd5b5061019361018e36600461173d565b6103ec565b604051901515815260200161016a565b3480156101af57600080fd5b50670de0b6b3a76400005b60405190815260200161016a565b3480156101d457600080fd5b506101936101e33660046116fc565b610403565b3480156101f457600080fd5b50610208610203366004611689565b61046c565b005b34801561021657600080fd5b50610208610225366004611835565b6104c0565b34801561023657600080fd5b506040516009815260200161016a565b34801561025257600080fd5b5061020861026136600461186f565b610508565b34801561027257600080fd5b5061020861053d565b34801561028757600080fd5b506101ba610296366004611689565b610574565b3480156102a757600080fd5b50610208610596565b3480156102bc57600080fd5b506102086102cb36600461186f565b61060a565b3480156102dc57600080fd5b506000546040516001600160a01b03909116815260200161016a565b34801561030457600080fd5b506040805180820190915260068152656550495a5a4160d01b602082015261015d565b34801561033357600080fd5b5061020861063f565b34801561034857600080fd5b5061019361035736600461173d565b61087e565b34801561036857600080fd5b50610208610377366004611769565b61088b565b34801561038857600080fd5b50610208610921565b34801561039d57600080fd5b50610208610961565b3480156103b257600080fd5b506101ba6103c13660046116c3565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006103f9338484610b2c565b5060015b92915050565b6000610410848484610c50565b610462843361045d85604051806060016040528060288152602001611aab602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610f93565b610b2c565b5060019392505050565b6000546001600160a01b0316331461049f5760405162461bcd60e51b815260040161049690611914565b60405180910390fd5b6001600160a01b03166000908152600660205260409020805460ff19169055565b6000546001600160a01b031633146104ea5760405162461bcd60e51b815260040161049690611914565b600f8054911515600160b81b0260ff60b81b19909216919091179055565b6000546001600160a01b031633146105325760405162461bcd60e51b815260040161049690611914565b600c91909155600b55565b6000546001600160a01b031633146105675760405162461bcd60e51b815260040161049690611914565b4761057181610fcd565b50565b6001600160a01b0381166000908152600260205260408120546103fd90611007565b6000546001600160a01b031633146105c05760405162461bcd60e51b815260040161049690611914565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106345760405162461bcd60e51b815260040161049690611914565b601091909155601155565b6000546001600160a01b031633146106695760405162461bcd60e51b815260040161049690611914565b600f54600160a01b900460ff16156106c35760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610496565b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b81529051829163c45a0155916004808301926020929190829003018186803b15801561072357600080fd5b505afa158015610737573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075b91906116a6565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a357600080fd5b505afa1580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107db91906116a6565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561082357600080fd5b505af1158015610837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085b91906116a6565b600f80546001600160a01b0319166001600160a01b039290921691909117905550565b60006103f9338484610c50565b6000546001600160a01b031633146108b55760405162461bcd60e51b815260040161049690611914565b60005b815181101561091d576001600660008484815181106108d9576108d9611a5b565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061091581611a2a565b9150506108b8565b5050565b6000546001600160a01b0316331461094b5760405162461bcd60e51b815260040161049690611914565b600061095630610574565b90506105718161108b565b6000546001600160a01b0316331461098b5760405162461bcd60e51b815260040161049690611914565b600e546109ab9030906001600160a01b0316670de0b6b3a7640000610b2c565b600e546001600160a01b031663f305d71947306109c781610574565b6000806109dc6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610a3f57600080fd5b505af1158015610a53573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a789190611891565b5050600f805466470de4df820000601081905560115563ffff00ff60a01b198116630101000160a01b17909155600e5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b158015610af457600080fd5b505af1158015610b08573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105719190611852565b6001600160a01b038316610b8e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610496565b6001600160a01b038216610bef5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610496565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610cb45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610496565b6001600160a01b038216610d165760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610496565b60008111610d785760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610496565b6001600160a01b03831660009081526006602052604090205460ff16158015610dba57506001600160a01b03821660009081526006602052604090205460ff16155b610dc357600080fd5b6001600160a01b03831660009081526005602052604090205460ff16158015610e0557506001600160a01b03821660009081526005602052604090205460ff16155b15610f83576000600955600c54600a55600f546001600160a01b038481169116148015610e405750600e546001600160a01b03838116911614155b8015610e6557506001600160a01b03821660009081526005602052604090205460ff16155b8015610e7a5750600f54600160b81b900460ff165b15610eb5576000610e8a83610574565b9050601054821115610e9b57600080fd5b601154610ea88383611214565b1115610eb357600080fd5b505b600f546001600160a01b038381169116148015610ee05750600e546001600160a01b03848116911614155b8015610f0557506001600160a01b03831660009081526005602052604090205460ff16155b15610f16576000600955600b54600a555b6000610f2130610574565b600f54909150600160a81b900460ff16158015610f4c5750600f546001600160a01b03858116911614155b8015610f615750600f54600160b01b900460ff165b15610f8157610f6f8161108b565b478015610f7f57610f7f47610fcd565b505b505b610f8e838383611273565b505050565b60008184841115610fb75760405162461bcd60e51b815260040161049691906118bf565b506000610fc48486611a13565b95945050505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561091d573d6000803e3d6000fd5b600060075482111561106e5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610496565b600061107861127e565b905061108483826112a1565b9392505050565b600f805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106110d3576110d3611a5b565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561112757600080fd5b505afa15801561113b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115f91906116a6565b8160018151811061117257611172611a5b565b6001600160a01b039283166020918202929092010152600e546111989130911684610b2c565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac947906111d1908590600090869030904290600401611949565b600060405180830381600087803b1580156111eb57600080fd5b505af11580156111ff573d6000803e3d6000fd5b5050600f805460ff60a81b1916905550505050565b60008061122183856119ba565b9050838110156110845760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610496565b610f8e8383836112e3565b600080600061128b6113da565b909250905061129a82826112a1565b9250505090565b600061108483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061141a565b6000806000806000806112f587611448565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061132790876114a5565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546113569086611214565b6001600160a01b038916600090815260026020526040902055611378816114e7565b6113828483611531565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516113c791815260200190565b60405180910390a3505050505050505050565b6007546000908190670de0b6b3a76400006113f582826112a1565b82101561141157505060075492670de0b6b3a764000092509050565b90939092509050565b6000818361143b5760405162461bcd60e51b815260040161049691906118bf565b506000610fc484866119d2565b60008060008060008060008060006114658a600954600a54611555565b925092509250600061147561127e565b905060008060006114888e8787876115aa565b919e509c509a509598509396509194505050505091939550919395565b600061108483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f93565b60006114f161127e565b905060006114ff83836115fa565b3060009081526002602052604090205490915061151c9082611214565b30600090815260026020526040902055505050565b60075461153e90836114a5565b60075560085461154e9082611214565b6008555050565b600080808061156f606461156989896115fa565b906112a1565b9050600061158260646115698a896115fa565b9050600061159a826115948b866114a5565b906114a5565b9992985090965090945050505050565b60008080806115b988866115fa565b905060006115c788876115fa565b905060006115d588886115fa565b905060006115e78261159486866114a5565b939b939a50919850919650505050505050565b600082611609575060006103fd565b600061161583856119f4565b90508261162285836119d2565b146110845760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610496565b803561168481611a87565b919050565b60006020828403121561169b57600080fd5b813561108481611a87565b6000602082840312156116b857600080fd5b815161108481611a87565b600080604083850312156116d657600080fd5b82356116e181611a87565b915060208301356116f181611a87565b809150509250929050565b60008060006060848603121561171157600080fd5b833561171c81611a87565b9250602084013561172c81611a87565b929592945050506040919091013590565b6000806040838503121561175057600080fd5b823561175b81611a87565b946020939093013593505050565b6000602080838503121561177c57600080fd5b823567ffffffffffffffff8082111561179457600080fd5b818501915085601f8301126117a857600080fd5b8135818111156117ba576117ba611a71565b8060051b604051601f19603f830116810181811085821117156117df576117df611a71565b604052828152858101935084860182860187018a10156117fe57600080fd5b600095505b838610156118285761181481611679565b855260019590950194938601938601611803565b5098975050505050505050565b60006020828403121561184757600080fd5b813561108481611a9c565b60006020828403121561186457600080fd5b815161108481611a9c565b6000806040838503121561188257600080fd5b50508035926020909101359150565b6000806000606084860312156118a657600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b818110156118ec578581018301518582016040015282016118d0565b818111156118fe576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119995784516001600160a01b031683529383019391830191600101611974565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156119cd576119cd611a45565b500190565b6000826119ef57634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611a0e57611a0e611a45565b500290565b600082821015611a2557611a25611a45565b500390565b6000600019821415611a3e57611a3e611a45565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461057157600080fd5b801515811461057157600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209c25d52227fab18bbce6659fcdc94cd254fa452435536e3c973bc407c498145564736f6c63430008070033
Deployed Bytecode Sourcemap
3798:10539:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5538:83;;;;;;;;;;-1:-1:-1;5608:5:0;;;;;;;;;;;;-1:-1:-1;;;5608:5:0;;;;5538:83;;;;;;;:::i;:::-;;;;;;;;6390:161;;;;;;;;;;-1:-1:-1;6390:161:0;;;;;:::i;:::-;;:::i;:::-;;;5605:14:1;;5598:22;5580:41;;5568:2;5553:18;6390:161:0;5440:187:1;5815:95:0;;;;;;;;;;-1:-1:-1;4250:18:0;5815:95;;;10290:25:1;;;10278:2;10263:18;5815:95:0;10144:177:1;6559:313:0;;;;;;;;;;-1:-1:-1;6559:313:0;;;;;:::i;:::-;;:::i;11001:88::-;;;;;;;;;;-1:-1:-1;11001:88:0;;;;;:::i;:::-;;:::i;:::-;;6880:97;;;;;;;;;;-1:-1:-1;6880:97:0;;;;;:::i;:::-;;:::i;5724:83::-;;;;;;;;;;-1:-1:-1;5724:83:0;;4669:1;11453:36:1;;11441:2;11426:18;5724:83:0;11311:184:1;13919:145:0;;;;;;;;;;-1:-1:-1;13919:145:0;;;;;:::i;:::-;;:::i;12337:153::-;;;;;;;;;;;;;:::i;5918:138::-;;;;;;;;;;-1:-1:-1;5918:138:0;;;;;:::i;:::-;;:::i;2877:148::-;;;;;;;;;;;;;:::i;9089:185::-;;;;;;;;;;-1:-1:-1;9089:185:0;;;;;:::i;:::-;;:::i;2663:79::-;;;;;;;;;;-1:-1:-1;2701:7:0;2728:6;2663:79;;-1:-1:-1;;;;;2728:6:0;;;4178:51:1;;4166:2;4151:18;2663:79:0;4032:203:1;5629:87:0;;;;;;;;;;-1:-1:-1;5701:7:0;;;;;;;;;;;;-1:-1:-1;;;5701:7:0;;;;5629:87;;9888:392;;;;;;;;;;;;;:::i;6064:167::-;;;;;;;;;;-1:-1:-1;6064:167:0;;;;;:::i;:::-;;:::i;10825:164::-;;;;;;;;;;-1:-1:-1;10825:164:0;;;;;:::i;:::-;;:::i;12171:154::-;;;;;;;;;;;;;:::i;10292:519::-;;;;;;;;;;;;;:::i;6239:143::-;;;;;;;;;;-1:-1:-1;6239:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6347:18:0;;;6320:7;6347:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6239:143;6390:161;6465:4;6482:39;461:10;6505:7;6514:6;6482:8;:39::i;:::-;-1:-1:-1;6539:4:0;6390:161;;;;;:::o;6559:313::-;6657:4;6674:36;6684:6;6692:9;6703:6;6674:9;:36::i;:::-;6721:121;6730:6;461:10;6752:89;6790:6;6752:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6752:19:0;;;;;;:11;:19;;;;;;;;461:10;6752:33;;;;;;;;;;:37;:89::i;:::-;6721:8;:121::i;:::-;-1:-1:-1;6860:4:0;6559:313;;;;;:::o;11001:88::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;11061:12:0::1;11076:5;11061:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;11061:20:0::1;::::0;;11001:88::o;6880:97::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;6949:12:::1;:20:::0;;;::::1;;-1:-1:-1::0;;;6949:20:0::1;-1:-1:-1::0;;;;6949:20:0;;::::1;::::0;;;::::1;::::0;;6880:97::o;13919:145::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;14003:7:::1;:16:::0;;;;14034:8:::1;:18:::0;13919:145::o;12337:153::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;12418:21:::1;12450:32;12418:21:::0;12450:12:::1;:32::i;:::-;12378:112;12337:153::o:0;5918:138::-;-1:-1:-1;;;;;6031:16:0;;5984:7;6031:16;;;:7;:16;;;;;;6011:37;;:19;:37::i;2877:148::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;2984:1:::1;2968:6:::0;;2947:40:::1;::::0;-1:-1:-1;;;;;2968:6:0;;::::1;::::0;2947:40:::1;::::0;2984:1;;2947:40:::1;3015:1;2998:19:::0;;-1:-1:-1;;;;;;2998:19:0::1;::::0;;2877:148::o;9089:185::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;9195:12:::1;:26:::0;;;;9236:14:::1;:30:::0;9089:185::o;9888:392::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;9950:14:::1;::::0;-1:-1:-1;;;9950:14:0;::::1;;;9949:15;9941:50;;;::::0;-1:-1:-1;;;9941:50:0;;9994:2:1;9941:50:0::1;::::0;::::1;9976:21:1::0;10033:2;10013:18;;;10006:30;10072:25;10052:18;;;10045:53;10115:18;;9941:50:0::1;9792:347:1::0;9941:50:0::1;10113:15;:34:::0;;-1:-1:-1;;;;;;10113:34:0::1;10059:42;10113:34:::0;;::::1;::::0;;;10192:26:::1;::::0;;-1:-1:-1;;;10192:26:0;;;;10059:42;;10192:24:::1;::::0;:26:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;10059:42;10192:26;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10174:56:0::1;;10239:4;10246:16;-1:-1:-1::0;;;;;10246:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10174:96;::::0;-1:-1:-1;;;;;;10174:96:0::1;::::0;;;;;;-1:-1:-1;;;;;4470:15:1;;;10174:96:0::1;::::0;::::1;4452:34:1::0;4522:15;;4502:18;;;4495:43;4387:18;;10174:96:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10158:13;:112:::0;;-1:-1:-1;;;;;;10158:112:0::1;-1:-1:-1::0;;;;;10158:112:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;9888:392:0:o;6064:167::-;6142:4;6159:42;461:10;6183:9;6194:6;6159:9;:42::i;10825:164::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;10899:6:::1;10894:88;10915:5;:12;10911:1;:16;10894:88;;;10966:4;10949;:14;10954:5;10960:1;10954:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10949:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10949:14:0;:21;;-1:-1:-1;;10949:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10929:3;::::1;::::0;::::1;:::i;:::-;;;;10894:88;;;;10825:164:::0;:::o;12171:154::-;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;12223:23:::1;12249:24;12267:4;12249:9;:24::i;:::-;12223:50;;12284:33;12301:15;12284:16;:33::i;10292:519::-:0;2790:6;;-1:-1:-1;;;;;2790:6:0;461:10;2790:22;2782:67;;;;-1:-1:-1;;;2782:67:0;;;;;;;:::i;:::-;10379:15:::1;::::0;10347:58:::1;::::0;10364:4:::1;::::0;-1:-1:-1;;;;;10379:15:0::1;4250:18;10347:8;:58::i;:::-;10416:15;::::0;-1:-1:-1;;;;;10416:15:0::1;:31;10455:21;10486:4;10492:24;10486:4:::0;10492:9:::1;:24::i;:::-;10517:1;10519::::0;10521:7:::1;2701::::0;2728:6;-1:-1:-1;;;;;2728:6:0;;2663:79;10521:7:::1;10416:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10416:129:0;;;-1:-1:-1;;;;;5187:15:1;;;10416:129:0::1;::::0;::::1;5169:34:1::0;5219:18;;;5212:34;;;;5262:18;;;5255:34;;;;5305:18;;;5298:34;5369:15;;;5348:19;;;5341:44;10529:15:0::1;5401:19:1::0;;;5394:35;5103:19;;10416:129:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10556:10:0::1;:17:::0;;10629:16:::1;10614:12;:31:::0;;;10656:14:::1;:33:::0;-1:-1:-1;;;;10700:21:0;;-1:-1:-1;;;10700:21:0;;;;10770:15:::1;::::0;10732:71:::1;::::0;-1:-1:-1;;;10732:71:0;;-1:-1:-1;;;;;10770:15:0;;::::1;10732:71;::::0;::::1;4723:51:1::0;-1:-1:-1;;4790:18:1;;;4783:34;10739:13:0;;;-1:-1:-1;10732:29:0::1;::::0;4696:18:1;;10732:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7247:335::-:0;-1:-1:-1;;;;;7340:19:0;;7332:68;;;;-1:-1:-1;;;7332:68:0;;9589:2:1;7332:68:0;;;9571:21:1;9628:2;9608:18;;;9601:30;9667:34;9647:18;;;9640:62;-1:-1:-1;;;9718:18:1;;;9711:34;9762:19;;7332:68:0;9387:400:1;7332:68:0;-1:-1:-1;;;;;7419:21:0;;7411:68;;;;-1:-1:-1;;;7411:68:0;;7251:2:1;7411:68:0;;;7233:21:1;7290:2;7270:18;;;7263:30;7329:34;7309:18;;;7302:62;-1:-1:-1;;;7380:18:1;;;7373:32;7422:19;;7411:68:0;7049:398:1;7411:68:0;-1:-1:-1;;;;;7490:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7542:32;;10290:25:1;;;7542:32:0;;10263:18:1;7542:32:0;;;;;;;7247:335;;;:::o;7590:1483::-;-1:-1:-1;;;;;7678:18:0;;7670:68;;;;-1:-1:-1;;;7670:68:0;;9183:2:1;7670:68:0;;;9165:21:1;9222:2;9202:18;;;9195:30;9261:34;9241:18;;;9234:62;-1:-1:-1;;;9312:18:1;;;9305:35;9357:19;;7670:68:0;8981:401:1;7670:68:0;-1:-1:-1;;;;;7757:16:0;;7749:64;;;;-1:-1:-1;;;7749:64:0;;6436:2:1;7749:64:0;;;6418:21:1;6475:2;6455:18;;;6448:30;6514:34;6494:18;;;6487:62;-1:-1:-1;;;6565:18:1;;;6558:33;6608:19;;7749:64:0;6234:399:1;7749:64:0;7841:1;7832:6;:10;7824:64;;;;-1:-1:-1;;;7824:64:0;;8773:2:1;7824:64:0;;;8755:21:1;8812:2;8792:18;;;8785:30;8851:34;8831:18;;;8824:62;-1:-1:-1;;;8902:18:1;;;8895:39;8951:19;;7824:64:0;8571:405:1;7824:64:0;-1:-1:-1;;;;;7908:10:0;;;;;;:4;:10;;;;;;;;7907:11;:23;;;;-1:-1:-1;;;;;;7922:8:0;;;;;;:4;:8;;;;;;;;7921:9;7907:23;7899:32;;;;;;-1:-1:-1;;;;;7949:24:0;;;;;;:18;:24;;;;;;;;7948:25;:66;;;;-1:-1:-1;;;;;;7992:22:0;;;;;;:18;:22;;;;;;;;7991:23;7948:66;7944:1077;;;8040:1;8032:5;:9;8064:7;;8056:5;:15;8098:13;;-1:-1:-1;;;;;8090:21:0;;;8098:13;;8090:21;:55;;;;-1:-1:-1;8129:15:0;;-1:-1:-1;;;;;8115:30:0;;;8129:15;;8115:30;;8090:55;:83;;;;-1:-1:-1;;;;;;8151:22:0;;;;;;:18;:22;;;;;;;;8149:24;8090:83;:99;;;;-1:-1:-1;8177:12:0;;-1:-1:-1;;;8177:12:0;;;;8090:99;8086:311;;;8210:18;8231:22;8249:2;8231:9;:22::i;:::-;8210:43;;8290:12;;8280:6;:22;;8272:31;;;;;;8359:14;;8330:25;:6;8341:13;8330:10;:25::i;:::-;:43;;8322:52;;;;;;8191:206;8086:311;8449:13;;-1:-1:-1;;;;;8443:19:0;;;8449:13;;8443:19;:55;;;;-1:-1:-1;8482:15:0;;-1:-1:-1;;;;;8466:32:0;;;8482:15;;8466:32;;8443:55;:85;;;;-1:-1:-1;;;;;;8504:24:0;;;;;;:18;:24;;;;;;;;8502:26;8443:85;8439:170;;;8557:1;8549:5;:9;8585:8;;8577:5;:16;8439:170;8623:28;8654:24;8672:4;8654:9;:24::i;:::-;8698:6;;8623:55;;-1:-1:-1;;;;8698:6:0;;;;8697:7;:32;;;;-1:-1:-1;8716:13:0;;-1:-1:-1;;;;;8708:21:0;;;8716:13;;8708:21;;8697:32;:46;;;;-1:-1:-1;8733:10:0;;-1:-1:-1;;;8733:10:0;;;;8697:46;8693:317;;;8764:38;8781:20;8764:16;:38::i;:::-;8850:21;8893:22;;8890:105;;8940:35;8953:21;8940:12;:35::i;:::-;8745:265;8693:317;8017:1004;7944:1077;9035:30;9050:4;9055:2;9058:6;9035:14;:30::i;:::-;7590:1483;;;:::o;1518:190::-;1604:7;1640:12;1632:6;;;;1624:29;;;;-1:-1:-1;;;1624:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1664:9:0;1676:5;1680:1;1676;:5;:::i;:::-;1664:17;1518:190;-1:-1:-1;;;;;1518:190:0:o;9787:93::-;9844:11;;:28;;-1:-1:-1;;;;;9844:11:0;;;;:28;;;;;9865:6;;9844:11;:28;:11;:28;9865:6;9844:11;:28;;;;;;;;;;;;;;;;;;;6985:254;7052:7;7091;;7080;:18;;7072:73;;;;-1:-1:-1;;;7072:73:0;;6840:2:1;7072:73:0;;;6822:21:1;6879:2;6859:18;;;6852:30;6918:34;6898:18;;;6891:62;-1:-1:-1;;;6969:18:1;;;6962:40;7019:19;;7072:73:0;6638:406:1;7072:73:0;7156:19;7179:10;:8;:10::i;:::-;7156:33;-1:-1:-1;7207:24:0;:7;7156:33;7207:11;:24::i;:::-;7200:31;6985:254;-1:-1:-1;;;6985:254:0:o;9288:483::-;5104:6;:13;;-1:-1:-1;;;;5104:13:0;-1:-1:-1;;;5104:13:0;;;9390:16:::1;::::0;;9404:1:::1;9390:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9390:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9390:16:0::1;9366:40;;9435:4;9417;9422:1;9417:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9417:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9461:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9461:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9417:7;;9461:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9451:4;9456:1;9451:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9451:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9526:15:::1;::::0;9494:62:::1;::::0;9511:4:::1;::::0;9526:15:::1;9544:11:::0;9494:8:::1;:62::i;:::-;9567:15;::::0;:196:::1;::::0;-1:-1:-1;;;9567:196:0;;-1:-1:-1;;;;;9567:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9648:11;;9567:15:::1;::::0;9690:4;;9717::::1;::::0;9737:15:::1;::::0;9567:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5140:6:0;:14;;-1:-1:-1;;;;5140:14:0;;;-1:-1:-1;;;;9288:483:0:o;1187:179::-;1245:7;;1277:5;1281:1;1277;:5;:::i;:::-;1265:17;;1306:1;1301;:6;;1293:46;;;;-1:-1:-1;;;1293:46:0;;7654:2:1;1293:46:0;;;7636:21:1;7693:2;7673:18;;;7666:30;7732:29;7712:18;;;7705:57;7779:18;;1293:46:0;7452:351:1;11105:146:0;11199:44;11217:6;11225:9;11236:6;11199:17;:44::i;13748:163::-;13789:7;13810:15;13827;13846:19;:17;:19::i;:::-;13809:56;;-1:-1:-1;13809:56:0;-1:-1:-1;13883:20:0;13809:56;;13883:11;:20::i;:::-;13876:27;;;;13748:163;:::o;1970:132::-;2028:7;2055:39;2059:1;2062;2055:39;;;;;;;;;;;;;;;;;:3;:39::i;11259:488::-;11358:15;11375:23;11400:12;11414:23;11439:12;11453:13;11470:19;11481:7;11470:10;:19::i;:::-;-1:-1:-1;;;;;11518:15:0;;;;;;:7;:15;;;;;;11357:132;;-1:-1:-1;11357:132:0;;-1:-1:-1;11357:132:0;;-1:-1:-1;11357:132:0;-1:-1:-1;11357:132:0;-1:-1:-1;11357:132:0;-1:-1:-1;11518:28:0;;11357:132;11518:19;:28::i;:::-;-1:-1:-1;;;;;11500:15:0;;;;;;;:7;:15;;;;;;:46;;;;11578:18;;;;;;;:39;;11601:15;11578:22;:39::i;:::-;-1:-1:-1;;;;;11557:18:0;;;;;;:7;:18;;;;;:60;11629:16;11639:5;11629:9;:16::i;:::-;11656:23;11668:4;11674;11656:11;:23::i;:::-;11712:9;-1:-1:-1;;;;;11695:44:0;11704:6;-1:-1:-1;;;;;11695:44:0;;11723:15;11695:44;;;;10290:25:1;;10278:2;10263:18;;10144:177;11695:44:0;;;;;;;;11346:401;;;;;;11259:488;;;:::o;14072:262::-;14169:7;;14122;;;;4250:18;14243:20;14169:7;4250:18;14243:11;:20::i;:::-;14233:7;:30;14229:61;;;-1:-1:-1;;14273:7:0;;;4250:18;;-1:-1:-1;14072:262:0;-1:-1:-1;14072:262:0:o;14229:61::-;14309:7;;14318;;-1:-1:-1;14072:262:0;-1:-1:-1;14072:262:0:o;2110:189::-;2196:7;2231:12;2224:5;2216:28;;;;-1:-1:-1;;;2216:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2255:9:0;2267:5;2271:1;2267;:5;:::i;12504:463::-;12563:7;12572;12581;12590;12599;12608;12629:23;12654:12;12668:13;12685:34;12697:7;12706:5;;12713;;12685:11;:34::i;:::-;12628:91;;;;;;12730:19;12753:10;:8;:10::i;:::-;12730:33;;12775:15;12792:23;12817:12;12833:46;12845:7;12854:4;12860:5;12867:11;12833;:46::i;:::-;12774:105;;-1:-1:-1;12774:105:0;-1:-1:-1;12774:105:0;-1:-1:-1;12930:15:0;;-1:-1:-1;12947:4:0;;-1:-1:-1;12953:5:0;;-1:-1:-1;;;;;12504:463:0;;;;;;;:::o;1374:136::-;1432:7;1459:43;1463:1;1466;1459:43;;;;;;;;;;;;;;;;;:3;:43::i;11755:212::-;11808:19;11831:10;:8;:10::i;:::-;11808:33;-1:-1:-1;11852:13:0;11868:22;:5;11808:33;11868:9;:22::i;:::-;11942:4;11926:22;;;;:7;:22;;;;;;11852:38;;-1:-1:-1;11926:33:0;;11852:38;11926:26;:33::i;:::-;11917:4;11901:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;11755:212:0:o;11975:147::-;12053:7;;:17;;12065:4;12053:11;:17::i;:::-;12043:7;:27;12094:10;;:20;;12109:4;12094:14;:20::i;:::-;12081:10;:33;-1:-1:-1;;11975:147:0:o;12975:351::-;13068:7;;;;13121:28;13145:3;13121:19;:7;13133:6;13121:11;:19::i;:::-;:23;;:28::i;:::-;13106:43;-1:-1:-1;13160:13:0;13176:29;13201:3;13176:20;:7;13188;13176:11;:20::i;:29::-;13160:45;-1:-1:-1;13216:23:0;13242:28;13160:45;13242:17;:7;13254:4;13242:11;:17::i;:::-;:21;;:28::i;:::-;13216:54;13306:4;;-1:-1:-1;13312:5:0;;-1:-1:-1;12975:351:0;;-1:-1:-1;;;;;12975:351:0:o;13334:409::-;13444:7;;;;13500:24;:7;13512:11;13500;:24::i;:::-;13482:42;-1:-1:-1;13535:12:0;13550:21;:4;13559:11;13550:8;:21::i;:::-;13535:36;-1:-1:-1;13582:13:0;13598:22;:5;13608:11;13598:9;:22::i;:::-;13582:38;-1:-1:-1;13631:23:0;13657:28;13582:38;13657:17;:7;13669:4;13657:11;:17::i;:28::-;13704:7;;;;-1:-1:-1;13730:4:0;;-1:-1:-1;13334:409:0;;-1:-1:-1;;;;;;;13334:409:0:o;1716:246::-;1774:7;1798:6;1794:47;;-1:-1:-1;1828:1:0;1821:8;;1794:47;1851:9;1863:5;1867:1;1863;:5;:::i;:::-;1851:17;-1:-1:-1;1896:1:0;1887:5;1891:1;1851:17;1887:5;:::i;:::-;:10;1879:56;;;;-1:-1:-1;;;1879:56:0;;8010:2:1;1879:56:0;;;7992:21:1;8049:2;8029:18;;;8022:30;8088:34;8068:18;;;8061:62;-1:-1:-1;;;8139:18:1;;;8132:31;8180:19;;1879:56:0;7808:397:1;14:134;82:20;;111:31;82:20;111:31;:::i;:::-;14:134;;;:::o;153:247::-;212:6;265:2;253:9;244:7;240:23;236:32;233:52;;;281:1;278;271:12;233:52;320:9;307:23;339:31;364:5;339:31;:::i;405:251::-;475:6;528:2;516:9;507:7;503:23;499:32;496:52;;;544:1;541;534:12;496:52;576:9;570:16;595:31;620:5;595:31;:::i;661:388::-;729:6;737;790:2;778:9;769:7;765:23;761:32;758:52;;;806:1;803;796:12;758:52;845:9;832:23;864:31;889:5;864:31;:::i;:::-;914:5;-1:-1:-1;971:2:1;956:18;;943:32;984:33;943:32;984:33;:::i;:::-;1036:7;1026:17;;;661:388;;;;;:::o;1054:456::-;1131:6;1139;1147;1200:2;1188:9;1179:7;1175:23;1171:32;1168:52;;;1216:1;1213;1206:12;1168:52;1255:9;1242:23;1274:31;1299:5;1274:31;:::i;:::-;1324:5;-1:-1:-1;1381:2:1;1366:18;;1353:32;1394:33;1353:32;1394:33;:::i;:::-;1054:456;;1446:7;;-1:-1:-1;;;1500:2:1;1485:18;;;;1472:32;;1054:456::o;1515:315::-;1583:6;1591;1644:2;1632:9;1623:7;1619:23;1615:32;1612:52;;;1660:1;1657;1650:12;1612:52;1699:9;1686:23;1718:31;1743:5;1718:31;:::i;:::-;1768:5;1820:2;1805:18;;;;1792:32;;-1:-1:-1;;;1515:315:1:o;1835:1132::-;1919:6;1950:2;1993;1981:9;1972:7;1968:23;1964:32;1961:52;;;2009:1;2006;1999:12;1961:52;2049:9;2036:23;2078:18;2119:2;2111:6;2108:14;2105:34;;;2135:1;2132;2125:12;2105:34;2173:6;2162:9;2158:22;2148:32;;2218:7;2211:4;2207:2;2203:13;2199:27;2189:55;;2240:1;2237;2230:12;2189:55;2276:2;2263:16;2298:2;2294;2291:10;2288:36;;;2304:18;;:::i;:::-;2350:2;2347:1;2343:10;2382:2;2376:9;2445:2;2441:7;2436:2;2432;2428:11;2424:25;2416:6;2412:38;2500:6;2488:10;2485:22;2480:2;2468:10;2465:18;2462:46;2459:72;;;2511:18;;:::i;:::-;2547:2;2540:22;2597:18;;;2631:15;;;;-1:-1:-1;2666:11:1;;;2696;;;2692:20;;2689:33;-1:-1:-1;2686:53:1;;;2735:1;2732;2725:12;2686:53;2757:1;2748:10;;2767:169;2781:2;2778:1;2775:9;2767:169;;;2838:23;2857:3;2838:23;:::i;:::-;2826:36;;2799:1;2792:9;;;;;2882:12;;;;2914;;2767:169;;;-1:-1:-1;2955:6:1;1835:1132;-1:-1:-1;;;;;;;;1835:1132:1:o;2972:241::-;3028:6;3081:2;3069:9;3060:7;3056:23;3052:32;3049:52;;;3097:1;3094;3087:12;3049:52;3136:9;3123:23;3155:28;3177:5;3155:28;:::i;3218:245::-;3285:6;3338:2;3326:9;3317:7;3313:23;3309:32;3306:52;;;3354:1;3351;3344:12;3306:52;3386:9;3380:16;3405:28;3427:5;3405:28;:::i;3468:248::-;3536:6;3544;3597:2;3585:9;3576:7;3572:23;3568:32;3565:52;;;3613:1;3610;3603:12;3565:52;-1:-1:-1;;3636:23:1;;;3706:2;3691:18;;;3678:32;;-1:-1:-1;3468:248:1:o;3721:306::-;3809:6;3817;3825;3878:2;3866:9;3857:7;3853:23;3849:32;3846:52;;;3894:1;3891;3884:12;3846:52;3923:9;3917:16;3907:26;;3973:2;3962:9;3958:18;3952:25;3942:35;;4017:2;4006:9;4002:18;3996:25;3986:35;;3721:306;;;;;:::o;5632:597::-;5744:4;5773:2;5802;5791:9;5784:21;5834:6;5828:13;5877:6;5872:2;5861:9;5857:18;5850:34;5902:1;5912:140;5926:6;5923:1;5920:13;5912:140;;;6021:14;;;6017:23;;6011:30;5987:17;;;6006:2;5983:26;5976:66;5941:10;;5912:140;;;6070:6;6067:1;6064:13;6061:91;;;6140:1;6135:2;6126:6;6115:9;6111:22;6107:31;6100:42;6061:91;-1:-1:-1;6213:2:1;6192:15;-1:-1:-1;;6188:29:1;6173:45;;;;6220:2;6169:54;;5632:597;-1:-1:-1;;;5632:597:1:o;8210:356::-;8412:2;8394:21;;;8431:18;;;8424:30;8490:34;8485:2;8470:18;;8463:62;8557:2;8542:18;;8210:356::o;10326:980::-;10588:4;10636:3;10625:9;10621:19;10667:6;10656:9;10649:25;10693:2;10731:6;10726:2;10715:9;10711:18;10704:34;10774:3;10769:2;10758:9;10754:18;10747:31;10798:6;10833;10827:13;10864:6;10856;10849:22;10902:3;10891:9;10887:19;10880:26;;10941:2;10933:6;10929:15;10915:29;;10962:1;10972:195;10986:6;10983:1;10980:13;10972:195;;;11051:13;;-1:-1:-1;;;;;11047:39:1;11035:52;;11142:15;;;;11107:12;;;;11083:1;11001:9;10972:195;;;-1:-1:-1;;;;;;;11223:32:1;;;;11218:2;11203:18;;11196:60;-1:-1:-1;;;11287:3:1;11272:19;11265:35;11184:3;10326:980;-1:-1:-1;;;10326:980:1:o;11500:128::-;11540:3;11571:1;11567:6;11564:1;11561:13;11558:39;;;11577:18;;:::i;:::-;-1:-1:-1;11613:9:1;;11500:128::o;11633:217::-;11673:1;11699;11689:132;;11743:10;11738:3;11734:20;11731:1;11724:31;11778:4;11775:1;11768:15;11806:4;11803:1;11796:15;11689:132;-1:-1:-1;11835:9:1;;11633:217::o;11855:168::-;11895:7;11961:1;11957;11953:6;11949:14;11946:1;11943:21;11938:1;11931:9;11924:17;11920:45;11917:71;;;11968:18;;:::i;:::-;-1:-1:-1;12008:9:1;;11855:168::o;12028:125::-;12068:4;12096:1;12093;12090:8;12087:34;;;12101:18;;:::i;:::-;-1:-1:-1;12138:9:1;;12028:125::o;12158:135::-;12197:3;-1:-1:-1;;12218:17:1;;12215:43;;;12238:18;;:::i;:::-;-1:-1:-1;12285:1:1;12274:13;;12158:135::o;12298:127::-;12359:10;12354:3;12350:20;12347:1;12340:31;12390:4;12387:1;12380:15;12414:4;12411:1;12404:15;12430:127;12491:10;12486:3;12482:20;12479:1;12472:31;12522:4;12519:1;12512:15;12546:4;12543:1;12536:15;12562:127;12623:10;12618:3;12614:20;12611:1;12604:31;12654:4;12651:1;12644:15;12678:4;12675:1;12668:15;12694:131;-1:-1:-1;;;;;12769:31:1;;12759:42;;12749:70;;12815:1;12812;12805:12;12830:118;12916:5;12909:13;12902:21;12895:5;12892:32;12882:60;;12938:1;12935;12928:12
Swarm Source
ipfs://9c25d52227fab18bbce6659fcdc94cd254fa452435536e3c973bc407c4981455
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.