Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
Reentrancy in CITYQUEEN._transfer(address,address,uint256) (#1111-1155):
External calls:
- swapAndLiquify(contractTokenBalance) (#1142)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#1142)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
State variables written after the call(s):
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _rOwned[_MarketingWalletAddress] = _rOwned[_MarketingWalletAddress].add(rMarketing) (#1058)
- _rOwned[address(this)] = _rOwned[address(this)].add(rLiquidity) (#1050)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1246)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1236)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1258)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1237)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#959)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1259)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1248)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#961)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _rTotal = _rTotal.sub(rFee) (#1003)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _tOwned[_MarketingWalletAddress] = _tOwned[_MarketingWalletAddress].add(tMarketing) (#1060)
- _tOwned[address(this)] = _tOwned[address(this)].add(tLiquidity) (#1052)
- _tOwned[sender] = _tOwned[sender].sub(tAmount) (#1257)
- _tOwned[sender] = _tOwned[sender].sub(tAmount) (#958)
- _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount) (#1247)
- _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount) (#960)
Apply the check-effects-interactions pattern.
Additional information: link
CITYQUEEN.addLiquidity(uint256,uint256) (#1198-1211) ignores return value by uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
Ensure that all the return values of the function calls are used.
Additional information: link
CITYQUEEN.allowance(address,address).owner (#875) shadows:
- Ownable.owner() (#535-537) (function)
CITYQUEEN._approve(address,address,uint256).owner (#1103) shadows:
- Ownable.owner() (#535-537) (function)
Rename the local variables that shadow another component.
Additional information: link
CITYQUEEN.setTaxFeePercent(uint256) (#976-978) should emit an event for:
- _taxFee = taxFee (#977)
CITYQUEEN.setMarketingFeePercent(uint256) (#980-982) should emit an event for:
- _marketingFee = marketingFee (#981)
CITYQUEEN.setLiquidityFeePercent(uint256) (#984-986) should emit an event for:
- _liquidityFee = liquidityFee (#985)
CITYQUEEN.setMaxTxPercent(uint256) (#988-992) should emit an event for:
- _maxTxAmount = _tTotal.mul(maxTxPercent).div(10 ** 2) (#989-991)
Emit an event for critical parameter changes.
Additional information: link
Reentrancy in CITYQUEEN._transfer(address,address,uint256) (#1111-1155):
External calls:
- swapAndLiquify(contractTokenBalance) (#1142)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#1142)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
State variables written after the call(s):
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _liquidityFee = _previousLiquidityFee (#1096)
- _liquidityFee = 0 (#1090)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _marketingFee = _previousMarketingFee (#1095)
- _marketingFee = 0 (#1089)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _previousLiquidityFee = _liquidityFee (#1086)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _previousMarketingFee = _marketingFee (#1085)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _previousTaxFee = _taxFee (#1084)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _tFeeTotal = _tFeeTotal.add(tFee) (#1004)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- _taxFee = _previousTaxFee (#1094)
- _taxFee = 0 (#1088)
Reentrancy in CITYQUEEN.constructor() (#824-846):
External calls:
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#834-835)
State variables written after the call(s):
- _isExcludedFromFee[owner()] = true (#841)
- _isExcludedFromFee[address(this)] = true (#842)
- uniswapV2Router = _uniswapV2Router (#838)
Reentrancy in CITYQUEEN.swapAndLiquify(uint256) (#1157-1178):
External calls:
- swapTokensForEth(half) (#1169)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
- addLiquidity(otherHalf,newBalance) (#1175)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#1175)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
State variables written after the call(s):
- addLiquidity(otherHalf,newBalance) (#1175)
- _allowances[owner][spender] = amount (#1107)
Reentrancy in CITYQUEEN.transferFrom(address,address,uint256) (#884-888):
External calls:
- _transfer(sender,recipient,amount) (#885)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
External calls sending eth:
- _transfer(sender,recipient,amount) (#885)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
State variables written after the call(s):
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (#886)
- _allowances[owner][spender] = amount (#1107)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in CITYQUEEN._transfer(address,address,uint256) (#1111-1155):
External calls:
- swapAndLiquify(contractTokenBalance) (#1142)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#1142)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
Event emitted after the call(s):
- Transfer(sender,recipient,tTransferAmount) (#1241)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- Transfer(sender,recipient,tTransferAmount) (#1252)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- Transfer(sender,recipient,tTransferAmount) (#1263)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
- Transfer(sender,recipient,tTransferAmount) (#965)
- _tokenTransfer(from,to,amount,takeFee) (#1154)
Reentrancy in CITYQUEEN.constructor() (#824-846):
External calls:
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#834-835)
Event emitted after the call(s):
- Transfer(address(0),owner(),_tTotal) (#845)
Reentrancy in CITYQUEEN.swapAndLiquify(uint256) (#1157-1178):
External calls:
- swapTokensForEth(half) (#1169)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
- addLiquidity(otherHalf,newBalance) (#1175)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#1175)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1108)
- addLiquidity(otherHalf,newBalance) (#1175)
- SwapAndLiquify(half,newBalance,otherHalf) (#1177)
Reentrancy in CITYQUEEN.transferFrom(address,address,uint256) (#884-888):
External calls:
- _transfer(sender,recipient,amount) (#885)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1189-1195)
External calls sending eth:
- _transfer(sender,recipient,amount) (#885)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1203-1210)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1108)
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (#886)
Apply the check-effects-interactions pattern.
Additional information: link
Address.isContract(address) (#342-351) uses assembly
- INLINE ASM (#349)
Address._verifyCallResult(bool,bytes,string) (#487-504) uses assembly
- INLINE ASM (#496-499)
Do not use evm assembly.
Additional information: link
CITYQUEEN.includeInReward(address) (#944-955) has costly operations inside a loop:
- _excluded.pop() (#951)
Use a local variable to hold the loop computation result.
Additional information: link
Address._verifyCallResult(bool,bytes,string) (#487-504) is never used and should be removed
Address.functionCall(address,bytes) (#395-397) is never used and should be removed
Address.functionCall(address,bytes,string) (#405-407) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#420-422) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#430-437) is never used and should be removed
Address.functionDelegateCall(address,bytes) (#469-471) is never used and should be removed
Address.functionDelegateCall(address,bytes,string) (#479-485) is never used and should be removed
Address.functionStaticCall(address,bytes) (#445-447) is never used and should be removed
Address.functionStaticCall(address,bytes,string) (#455-461) is never used and should be removed
Address.isContract(address) (#342-351) is never used and should be removed
Address.sendValue(address,uint256) (#369-375) is never used and should be removed
Context._msgData() (#315-318) is never used and should be removed
SafeMath.div(uint256,uint256,string) (#270-275) is never used and should be removed
SafeMath.mod(uint256,uint256) (#230-232) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#292-297) is never used and should be removed
SafeMath.tryAdd(uint256,uint256) (#101-107) is never used and should be removed
SafeMath.tryDiv(uint256,uint256) (#143-148) is never used and should be removed
SafeMath.tryMod(uint256,uint256) (#155-160) is never used and should be removed
SafeMath.tryMul(uint256,uint256) (#126-136) is never used and should be removed
SafeMath.trySub(uint256,uint256) (#114-119) is never used and should be removed
Remove unused functions.
Additional information: link
CITYQUEEN._rTotal (#787) is set pre-construction with a non-constant function or state variable:
- (MAX - (MAX % _tTotal))
CITYQUEEN._previousTaxFee (#794) is set pre-construction with a non-constant function or state variable:
- _taxFee
CITYQUEEN._previousMarketingFee (#796) is set pre-construction with a non-constant function or state variable:
- _marketingFee
CITYQUEEN._previousLiquidityFee (#798) is set pre-construction with a non-constant function or state variable:
- _liquidityFee
Remove any initialization of state variables via non-constant state variables or function calls. If variables must be set upon contract deployment, locate initialization in the constructor instead.
Additional information: link
Pragma version^0.8.3 (#8) allows old versions
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#369-375):
- (success) = recipient.call{value: amount}() (#373)
Low level call in Address.functionCallWithValue(address,bytes,uint256,string) (#430-437):
- (success,returndata) = target.call{value: value}(data) (#435)
Low level call in Address.functionStaticCall(address,bytes,string) (#455-461):
- (success,returndata) = target.staticcall(data) (#459)
Low level call in Address.functionDelegateCall(address,bytes,string) (#479-485):
- (success,returndata) = target.delegatecall(data) (#483)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Function IUniswapV2Pair.DOMAIN_SEPARATOR() (#601) is not in mixedCase
Function IUniswapV2Pair.PERMIT_TYPEHASH() (#602) is not in mixedCase
Function IUniswapV2Pair.MINIMUM_LIQUIDITY() (#619) is not in mixedCase
Function IUniswapV2Router01.WETH() (#639) is not in mixedCase
Parameter CITYQUEEN.setSwapAndLiquifyEnabled(bool)._enabled (#994) is not in mixedCase
Parameter CITYQUEEN.calculateTaxFee(uint256)._amount (#1063) is not in mixedCase
Parameter CITYQUEEN.calculateMarketingFee(uint256)._amount (#1069) is not in mixedCase
Parameter CITYQUEEN.calculateLiquidityFee(uint256)._amount (#1075) is not in mixedCase
Variable CITYQUEEN._MarketingWalletAddress (#783) is not in mixedCase
Variable CITYQUEEN._taxFee (#793) is not in mixedCase
Variable CITYQUEEN._marketingFee (#795) is not in mixedCase
Variable CITYQUEEN._liquidityFee (#797) is not in mixedCase
Variable CITYQUEEN._maxTxAmount (#806) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#316)" inContext (#310-319)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#644) is too similar to IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#645)
Variable CITYQUEEN._transferFromExcluded(address,address,uint256).rTransferAmount (#1256) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._transferStandard(address,address,uint256).rTransferAmount (#1235) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN.reflectionFromToken(uint256,bool).rTransferAmount (#923) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN._transferBothExcluded(address,address,uint256).rTransferAmount (#957) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN._transferToExcluded(address,address,uint256).rTransferAmount (#1245) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._getValues(uint256).rTransferAmount (#1009) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN._getValues(uint256).rTransferAmount (#1009) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN._transferStandard(address,address,uint256).rTransferAmount (#1235) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN._transferFromExcluded(address,address,uint256).rTransferAmount (#1256) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN._transferStandard(address,address,uint256).rTransferAmount (#1235) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN.reflectionFromToken(uint256,bool).rTransferAmount (#923) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN._transferBothExcluded(address,address,uint256).rTransferAmount (#957) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN._transferFromExcluded(address,address,uint256).rTransferAmount (#1256) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN.reflectionFromToken(uint256,bool).rTransferAmount (#923) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN._transferBothExcluded(address,address,uint256).rTransferAmount (#957) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN._transferToExcluded(address,address,uint256).rTransferAmount (#1245) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN._transferToExcluded(address,address,uint256).rTransferAmount (#1245) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN._getValues(uint256).rTransferAmount (#1009) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN._getValues(uint256).rTransferAmount (#1009) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._transferStandard(address,address,uint256).rTransferAmount (#1235) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN.reflectionFromToken(uint256,bool).rTransferAmount (#923) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN._transferStandard(address,address,uint256).rTransferAmount (#1235) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._getValues(uint256).rTransferAmount (#1009) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN.reflectionFromToken(uint256,bool).rTransferAmount (#923) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._transferBothExcluded(address,address,uint256).rTransferAmount (#957) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1026) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Variable CITYQUEEN._transferFromExcluded(address,address,uint256).rTransferAmount (#1256) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN._transferFromExcluded(address,address,uint256).rTransferAmount (#1256) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN._transferToExcluded(address,address,uint256).rTransferAmount (#1245) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Variable CITYQUEEN._getValues(uint256).rTransferAmount (#1009) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Variable CITYQUEEN._transferBothExcluded(address,address,uint256).rTransferAmount (#957) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1026) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1026) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1026) is too similar to CITYQUEEN._transferFromExcluded(address,address,uint256).tTransferAmount (#1256)
Variable CITYQUEEN._transferToExcluded(address,address,uint256).rTransferAmount (#1245) is too similar to CITYQUEEN._transferStandard(address,address,uint256).tTransferAmount (#1235)
Variable CITYQUEEN._transferStandard(address,address,uint256).rTransferAmount (#1235) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Variable CITYQUEEN._transferToExcluded(address,address,uint256).rTransferAmount (#1245) is too similar to CITYQUEEN._transferBothExcluded(address,address,uint256).tTransferAmount (#957)
Variable CITYQUEEN._transferFromExcluded(address,address,uint256).rTransferAmount (#1256) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Variable CITYQUEEN._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1026) is too similar to CITYQUEEN._transferToExcluded(address,address,uint256).tTransferAmount (#1245)
Variable CITYQUEEN.reflectionFromToken(uint256,bool).rTransferAmount (#923) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Variable CITYQUEEN._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1026) is too similar to CITYQUEEN._getTValues(uint256).tTransferAmount (#1017)
Variable CITYQUEEN._transferBothExcluded(address,address,uint256).rTransferAmount (#957) is too similar to CITYQUEEN._getValues(uint256).tTransferAmount (#1008)
Prevent variables from having similar names.
Additional information: link
CITYQUEEN.slitherConstructorVariables() (#772-1267) uses literals with too many digits:
- _tTotal = 1000000000000000000000 (#786)
CITYQUEEN.slitherConstructorVariables() (#772-1267) uses literals with too many digits:
- _maxTxAmount = 700000000000000000000 (#806)
CITYQUEEN.slitherConstructorVariables() (#772-1267) uses literals with too many digits:
- numTokensSellToAddToLiquidity = 5000000000000000000 (#807)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
CITYQUEEN._MarketingWalletAddress (#783) should be constant
CITYQUEEN._decimals (#792) should be constant
CITYQUEEN._name (#790) should be constant
CITYQUEEN._symbol (#791) should be constant
CITYQUEEN._tTotal (#786) should be constant
CITYQUEEN.numTokensSellToAddToLiquidity (#807) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#554-557)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#563-567)
name() should be declared external:
- CITYQUEEN.name() (#849-851)
symbol() should be declared external:
- CITYQUEEN.symbol() (#853-855)
decimals() should be declared external:
- CITYQUEEN.decimals() (#857-859)
totalSupply() should be declared external:
- CITYQUEEN.totalSupply() (#861-863)
transfer(address,uint256) should be declared external:
- CITYQUEEN.transfer(address,uint256) (#870-873)
allowance(address,address) should be declared external:
- CITYQUEEN.allowance(address,address) (#875-877)
approve(address,uint256) should be declared external:
- CITYQUEEN.approve(address,uint256) (#879-882)
transferFrom(address,address,uint256) should be declared external:
- CITYQUEEN.transferFrom(address,address,uint256) (#884-888)
increaseAllowance(address,uint256) should be declared external:
- CITYQUEEN.increaseAllowance(address,uint256) (#890-893)
decreaseAllowance(address,uint256) should be declared external:
- CITYQUEEN.decreaseAllowance(address,uint256) (#895-898)
isExcludedFromReward(address) should be declared external:
- CITYQUEEN.isExcludedFromReward(address) (#900-902)
totalFees() should be declared external:
- CITYQUEEN.totalFees() (#904-906)
deliver(uint256) should be declared external:
- CITYQUEEN.deliver(uint256) (#908-915)
reflectionFromToken(uint256,bool) should be declared external:
- CITYQUEEN.reflectionFromToken(uint256,bool) (#917-926)
excludeFromReward(address) should be declared external:
- CITYQUEEN.excludeFromReward(address) (#934-942)
excludeFromFee(address) should be declared external:
- CITYQUEEN.excludeFromFee(address) (#968-970)
includeInFee(address) should be declared external:
- CITYQUEEN.includeInFee(address) (#972-974)
setSwapAndLiquifyEnabled(bool) should be declared external:
- CITYQUEEN.setSwapAndLiquifyEnabled(bool) (#994-997)
isExcludedFromFee(address) should be declared external:
- CITYQUEEN.isExcludedFromFee(address) (#1099-1101)
Use the external attribute for functions never called from the contract.
Additional information: link
Unable to find website, listings and other project-related information
Young tokens have high risks of scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Unable to find Telegram and Twitter accounts