Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._taxedTransfer(address,address,uint256,bool,bool) (#890-959):
External calls:
- claim(sender) (#924)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
- _swapContractToken() (#938)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
External calls sending eth:
- claim(sender) (#924)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
- _swapContractToken() (#938)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
State variables written after the call(s):
- _removeToken(sender,amount) (#947)
- _balances[addr] = newAmount (#1050)
- _balances[addr] = newAmount (#1057)
- _balances[address(this)] += contractToken (#950)
- _addToken(recipient,taxedAmount) (#955)
- _balances[addr] = newAmount (#1029)
- _balances[addr] = newAmount (#1040)
- _circulatingSupply -= tokensToBeBurnt (#952)
- _removeToken(sender,amount) (#947)
- alreadyPaidShares[addr] = profitPerShare * newAmount (#1059)
- _addToken(recipient,taxedAmount) (#955)
- alreadyPaidShares[addr] = profitPerShare * newAmount (#1036)
- _swapContractToken() (#938)
- profitPerShare += ((amount * DistributionMultiplier) / totalShares) (#1091)
- _removeToken(sender,amount) (#947)
- toBePaid[addr] += payment (#1061)
- _addToken(recipient,taxedAmount) (#955)
- toBePaid[addr] += payment (#1038)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.claim(address) (#1098-1132):
External calls:
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
State variables written after the call(s):
- _isWithdrawing = false (#1131)
Apply the check-effects-interactions pattern.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamReleaseLiquidity() (#1408-1418) ignores return value by liquidityToken.transfer(TeamWallet,amount) (#1416)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.claim(address) (#1098-1132) uses a dangerous strict equality:
- amount == 0 (#1115)
Don't use strict equality to determine if an account has enough Ether or tokens.
Additional information: link
Combination 3: Reentrancy vulnerabilities + Unchecked transfer vulnerability. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Contract ticker ($CIMD) contains non-alphanumeric characters.
Not a direct threat, but may indicate unreliable intentions of developer. Non-alphanumeric chars (,.;!#*&") are extremely rare among low risk tokens.
Contract name (CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE) has length of 48 chars.
Not a direct threat, but may indicate unreliable intentions of developer.
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excluded.add(TeamWallet) (#846)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excluded.add(walletTwo) (#847)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excluded.add(msg.sender) (#848)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excludedFromStaking.add(address(_pancakeRouter)) (#850)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excludedFromStaking.add(_pancakePairAddress) (#851)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excludedFromStaking.add(address(this)) (#852)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) ignores return value by _excludedFromStaking.add(0x000000000000000000000000000000000000dEaD) (#853)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._addLiquidity(uint256,uint256) (#1195-1206) ignores return value by _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddWalletExclusion(address) (#1332-1334) ignores return value by _excluded.add(exclusionAdd) (#1333)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveLiquidity(bool) (#1420-1449) ignores return value by liquidityToken.approve(address(_pancakeRouter),amount) (#1427)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveLiquidity(bool) (#1420-1449) ignores return value by _pancakeRouter.removeLiquidityETHSupportingFeeOnTransferTokens(address(this),amount,0,0,address(this),block.timestamp) (#1433-1440)
Ensure that all the return values of the function calls are used.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.allowance(address,address)._owner (#1494) shadows:
- Ownable._owner (#217) (state variable)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._approve(address,address,uint256).owner (#1502) shadows:
- Ownable.owner() (#233-235) (function)
Rename the local variables that shadow another component.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamWithdrawXMarketingBNB(uint256) (#1285-1290) should emit an event for:
- marketingBalance -= amount (#1287)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeAntiWhale(uint256) (#1297-1299) should emit an event for:
- antiWhale = newAntiWhale * 10 ** _decimals (#1298)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetSellLockTime(uint256) (#1320-1323) should emit an event for:
- sellLockTime = sellLockSeconds (#1322)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetBuyLockTime(uint256) (#1326-1329) should emit an event for:
- buyLockTime = buyLockSeconds (#1328)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetTaxes(uint8,uint8,uint8,uint8,uint8,uint8) (#1337-1348) should emit an event for:
- _burnTax = burnTaxes (#1341)
- _liquidityTax = liquidityTaxes (#1342)
- _stakingTax = stakingTaxes (#1343)
- _buyTax = buyTax (#1345)
- _sellTax = sellTax (#1346)
- _transferTax = transferTax (#1347)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeMarketingShare(uint8) (#1351-1354) should emit an event for:
- marketingShare = newShare (#1353)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamUpdateLimits(uint256,uint256) (#1361-1378) should emit an event for:
- balanceLimit = newBalanceLimit (#1376)
- sellLimit = newSellLimit (#1377)
Emit an event for critical parameter changes.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeTeamWallet(address).newTeamWallet (#1301) lacks a zero-check on :
- TeamWallet = address(newTeamWallet) (#1302)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeWalletTwo(address).newWalletTwo (#1305) lacks a zero-check on :
- walletTwo = address(newWalletTwo) (#1306)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.SetupLiquidityTokenAddress(address).liquidityTokenAddress (#1390) lacks a zero-check on :
- _liquidityTokenAddress = liquidityTokenAddress (#1391)
Check that the address is not zero.
Additional information: link
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveLiquidity(bool) (#1420-1449):
External calls:
- liquidityToken.approve(address(_pancakeRouter),amount) (#1427)
- _pancakeRouter.removeLiquidityETHSupportingFeeOnTransferTokens(address(this),amount,0,0,address(this),block.timestamp) (#1433-1440)
State variables written after the call(s):
- _distributeStake(newBNBBalance) (#1443)
- marketingBalance += marketingSplit (#1081)
- marketingBalance += amount (#1088)
- marketingBalance += newBNBBalance (#1446)
- _distributeStake(newBNBBalance) (#1443)
- profitPerShare += ((amount * DistributionMultiplier) / totalShares) (#1091)
- _distributeStake(newBNBBalance) (#1443)
- totalStakingReward += amount (#1084)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._swapContractToken() (#1148-1178):
External calls:
- _swapTokenForBNB(swapToken) (#1168)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
- _addLiquidity(liqToken,liqBNB) (#1172)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
External calls sending eth:
- _addLiquidity(liqToken,liqBNB) (#1172)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
State variables written after the call(s):
- _addLiquidity(liqToken,liqBNB) (#1172)
- _allowances[owner][spender] = amount (#1506)
- _distributeStake(distributeBNB) (#1177)
- marketingBalance += marketingSplit (#1081)
- marketingBalance += amount (#1088)
- _distributeStake(distributeBNB) (#1177)
- profitPerShare += ((amount * DistributionMultiplier) / totalShares) (#1091)
- _distributeStake(distributeBNB) (#1177)
- totalStakingReward += amount (#1084)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._taxedTransfer(address,address,uint256,bool,bool) (#890-959):
External calls:
- claim(sender) (#924)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
- _swapContractToken() (#938)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
External calls sending eth:
- claim(sender) (#924)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
- _swapContractToken() (#938)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
State variables written after the call(s):
- _swapContractToken() (#938)
- _allowances[owner][spender] = amount (#1506)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855):
External calls:
- _pancakePairAddress = IPancakeFactory(_pancakeRouter.factory()).createPair(address(this),_pancakeRouter.WETH()) (#823)
State variables written after the call(s):
- _burnTax = 0 (#841)
- _buyTax = 12 (#837)
- _liquidityTax = 50 (#842)
- _sellTax = 12 (#838)
- _stakingTax = 50 (#843)
- _transferTax = 12 (#839)
- balanceLimit = InitialSupply / BalanceLimitDivider (#826)
- buyLockTime = 20 (#833)
- sellLimit = InitialSupply / SellLimitDivider (#827)
- sellLockTime = 20 (#830)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.transferFrom(address,address,uint256) (#1510-1518):
External calls:
- _transfer(sender,recipient,amount) (#1511)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
External calls sending eth:
- _transfer(sender,recipient,amount) (#1511)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
State variables written after the call(s):
- _approve(sender,msg.sender,currentAllowance - amount) (#1516)
- _allowances[owner][spender] = amount (#1506)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._swapContractToken() (#1148-1178):
External calls:
- _swapTokenForBNB(swapToken) (#1168)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
- _addLiquidity(liqToken,liqBNB) (#1172)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
External calls sending eth:
- _addLiquidity(liqToken,liqBNB) (#1172)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1507)
- _addLiquidity(liqToken,liqBNB) (#1172)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._taxedTransfer(address,address,uint256,bool,bool) (#890-959):
External calls:
- claim(sender) (#924)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
- _swapContractToken() (#938)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
External calls sending eth:
- claim(sender) (#924)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
- _swapContractToken() (#938)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1507)
- _swapContractToken() (#938)
- Transfer(sender,recipient,taxedAmount) (#957)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.claim(address) (#1098-1132):
External calls:
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
Event emitted after the call(s):
- OnWithdrawXRP(amount,addr) (#1130)
Reentrancy in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.transferFrom(address,address,uint256) (#1510-1518):
External calls:
- _transfer(sender,recipient,amount) (#1511)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (#1186-1192)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
External calls sending eth:
- _transfer(sender,recipient,amount) (#1511)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (#1198-1205)
- _pancakeRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(0,path,addr,block.timestamp) (#1124-1128)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1507)
- _approve(sender,msg.sender,currentAllowance - amount) (#1516)
Apply the check-effects-interactions pattern.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._taxedTransfer(address,address,uint256,bool,bool) (#890-959) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(_sellLock[sender] <= block.timestamp || sellLockDisabled,Seller in sellLock) (#899)
- require(bool,string)(_buyLock[recipient] <= block.timestamp || buyLockDisabled,Buyer in buyLock) (#911)
- require(bool,string)(_sellLock[sender] <= block.timestamp || sellLockDisabled,Sender in Lock) (#930)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getLiquidityReleaseTimeInSeconds() (#1210-1215) uses timestamp for comparisons
Dangerous comparisons:
- block.timestamp < _liquidityUnlockTime (#1211)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getAddressSellLockTimeInSeconds(address) (#1230-1237) uses timestamp for comparisons
Dangerous comparisons:
- lockTime <= block.timestamp (#1232)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getAddressBuyLockTimeInSeconds(address) (#1243-1250) uses timestamp for comparisons
Dangerous comparisons:
- lockTime <= block.timestamp (#1245)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._prolongLiquidityLock(uint256) (#1401-1405) uses timestamp for comparisons
Dangerous comparisons:
- require(bool)(newUnlockTime > _liquidityUnlockTime) (#1403)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamReleaseLiquidity() (#1408-1418) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp >= _liquidityUnlockTime,Not yet unlocked) (#1410)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveLiquidity(bool) (#1420-1449) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp >= _liquidityUnlockTime,Not yet unlocked) (#1422)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveRemainingBNB() (#1451-1456) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp >= _liquidityUnlockTime,Not yet unlocked) (#1452)
Avoid relying on block.timestamp.
Additional information: link
Address.isContract(address) (#289-298) uses assembly
- INLINE ASM (#296)
Address._verifyCallResult(bool,bytes,string) (#434-451) uses assembly
- INLINE ASM (#443-446)
Do not use evm assembly.
Additional information: link
Address._verifyCallResult(bool,bytes,string) (#434-451) is never used and should be removed
Address.functionCall(address,bytes) (#342-344) is never used and should be removed
Address.functionCall(address,bytes,string) (#352-354) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#367-369) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#377-384) is never used and should be removed
Address.functionDelegateCall(address,bytes) (#416-418) is never used and should be removed
Address.functionDelegateCall(address,bytes,string) (#426-432) is never used and should be removed
Address.functionStaticCall(address,bytes) (#392-394) is never used and should be removed
Address.functionStaticCall(address,bytes,string) (#402-408) is never used and should be removed
Address.isContract(address) (#289-298) is never used and should be removed
Address.sendValue(address,uint256) (#316-322) is never used and should be removed
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._isTeam(address) (#809-811) is never used and should be removed
EnumerableSet._remove(EnumerableSet.Set,bytes32) (#521-553) is never used and should be removed
EnumerableSet.add(EnumerableSet.Bytes32Set,bytes32) (#596-598) is never used and should be removed
EnumerableSet.add(EnumerableSet.UintSet,uint256) (#704-706) is never used and should be removed
EnumerableSet.at(EnumerableSet.Bytes32Set,uint256) (#634-636) is never used and should be removed
EnumerableSet.at(EnumerableSet.UintSet,uint256) (#742-744) is never used and should be removed
EnumerableSet.contains(EnumerableSet.Bytes32Set,bytes32) (#613-615) is never used and should be removed
EnumerableSet.contains(EnumerableSet.UintSet,uint256) (#721-723) is never used and should be removed
EnumerableSet.length(EnumerableSet.Bytes32Set) (#620-622) is never used and should be removed
EnumerableSet.length(EnumerableSet.UintSet) (#728-730) is never used and should be removed
EnumerableSet.remove(EnumerableSet.AddressSet,address) (#660-662) is never used and should be removed
EnumerableSet.remove(EnumerableSet.Bytes32Set,bytes32) (#606-608) is never used and should be removed
EnumerableSet.remove(EnumerableSet.UintSet,uint256) (#714-716) is never used and should be removed
Remove unused functions.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.balanceLimit (#790) is set pre-construction with a non-constant function or state variable:
- _circulatingSupply
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.sellLimit (#791) is set pre-construction with a non-constant function or state variable:
- _circulatingSupply
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
Low level call in Address.sendValue(address,uint256) (#316-322):
- (success) = recipient.call{value: amount}() (#320)
Low level call in Address.functionCallWithValue(address,bytes,uint256,string) (#377-384):
- (success,returndata) = target.call{value: value}(data) (#382)
Low level call in Address.functionStaticCall(address,bytes,string) (#402-408):
- (success,returndata) = target.staticcall(data) (#406)
Low level call in Address.functionDelegateCall(address,bytes,string) (#426-432):
- (success,returndata) = target.delegatecall(data) (#430)
Low level call in CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveRemainingBNB() (#1451-1456):
- (sent) = TeamWallet.call{value: (address(this).balance)}() (#1454)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Function IPancakeERC20.DOMAIN_SEPARATOR() (#50) is not in mixedCase
Function IPancakeERC20.PERMIT_TYPEHASH() (#51) is not in mixedCase
Function IPancakeRouter01.WETH() (#154) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._getTotalShares() (#1013-1021) is not in mixedCase
Parameter CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getAddressSellLockTimeInSeconds(address).AddressToCheck (#1230) is not in mixedCase
Parameter CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getAddressBuyLockTimeInSeconds(address).AddressToCheck (#1243) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddressResetSellLock() (#1257-1259) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddressResetBuyLock() (#1262-1265) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamWithdrawALLMarketingBNB() (#1279-1284) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamWithdrawXMarketingBNB(uint256) (#1285-1290) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSwitchManualBNBConversion(bool) (#1293-1295) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeAntiWhale(uint256) (#1297-1299) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeTeamWallet(address) (#1301-1303) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeWalletTwo(address) (#1305-1307) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamDisableSellLock(bool) (#1310-1312) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamDisableBuyLock(bool) (#1315-1317) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetSellLockTime(uint256) (#1320-1323) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetBuyLockTime(uint256) (#1326-1329) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddWalletExclusion(address) (#1332-1334) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetTaxes(uint8,uint8,uint8,uint8,uint8,uint8) (#1337-1348) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeMarketingShare(uint8) (#1351-1354) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamCreateLPandBNB() (#1356-1358) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamUpdateLimits(uint256,uint256) (#1361-1378) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.SetupEnableTrading() (#1386-1388) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.SetupLiquidityTokenAddress(address) (#1390-1392) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamUnlockLiquidityInSeconds(uint256) (#1398-1400) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamReleaseLiquidity() (#1408-1418) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveLiquidity(bool) (#1420-1449) is not in mixedCase
Function CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveRemainingBNB() (#1451-1456) is not in mixedCase
Parameter CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.allowance(address,address)._owner (#1494) is not in mixedCase
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._name (#764) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._symbol (#765) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._decimals (#766) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.InitialSupply (#767) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.BalanceLimitDivider (#770) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.SellLimitDivider (#772) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.MaxSellLockTime (#774) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.MaxBuyLockTime (#776) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.DefaultLiquidityLockTime (#778) is not in UPPER_CASE_WITH_UNDERSCORES
Variable CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamWallet (#780) is not in mixedCase
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.PancakeRouter (#785) is not in UPPER_CASE_WITH_UNDERSCORES
Constant CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.DistributionMultiplier (#987) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Variable IPancakeRouter01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#73) is too similar to IPancakeRouter01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#74)
Prevent variables from having similar names.
Additional information: link
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.constructor() (#815-855) uses literals with too many digits:
- _excludedFromStaking.add(0x000000000000000000000000000000000000dEaD) (#853)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE._swapContractToken() (#1148-1178) uses literals with too many digits:
- tokenToSwap = 100000 * 10 ** _decimals (#1151)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.slitherConstructorVariables() (#749-1536) uses literals with too many digits:
- antiWhale = 100000 * 10 ** _decimals (#792)
CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.slitherConstructorConstantVariables() (#749-1536) uses literals with too many digits:
- InitialSupply = 60000000 * 10 ** _decimals (#767)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#252-255)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#261-265)
getLiquidityReleaseTimeInSeconds() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getLiquidityReleaseTimeInSeconds() (#1210-1215)
getBurnedTokens() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getBurnedTokens() (#1217-1219)
getLimits() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getLimits() (#1221-1223)
getTaxes() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getTaxes() (#1225-1227)
getAddressSellLockTimeInSeconds(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getAddressSellLockTimeInSeconds(address) (#1230-1237)
getSellLockTimeInSeconds() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getSellLockTimeInSeconds() (#1238-1240)
getAddressBuyLockTimeInSeconds(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getAddressBuyLockTimeInSeconds(address) (#1243-1250)
getBuyLockTimeInSeconds() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getBuyLockTimeInSeconds() (#1251-1253)
AddressResetSellLock() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddressResetSellLock() (#1257-1259)
AddressResetBuyLock() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddressResetBuyLock() (#1262-1265)
getDividents(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.getDividents(address) (#1266-1269)
TeamWithdrawALLMarketingBNB() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamWithdrawALLMarketingBNB() (#1279-1284)
TeamWithdrawXMarketingBNB(uint256) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamWithdrawXMarketingBNB(uint256) (#1285-1290)
TeamSwitchManualBNBConversion(bool) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSwitchManualBNBConversion(bool) (#1293-1295)
TeamChangeAntiWhale(uint256) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeAntiWhale(uint256) (#1297-1299)
TeamChangeTeamWallet(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeTeamWallet(address) (#1301-1303)
TeamChangeWalletTwo(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeWalletTwo(address) (#1305-1307)
TeamDisableSellLock(bool) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamDisableSellLock(bool) (#1310-1312)
TeamDisableBuyLock(bool) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamDisableBuyLock(bool) (#1315-1317)
TeamSetSellLockTime(uint256) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetSellLockTime(uint256) (#1320-1323)
TeamSetBuyLockTime(uint256) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetBuyLockTime(uint256) (#1326-1329)
AddWalletExclusion(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.AddWalletExclusion(address) (#1332-1334)
TeamSetTaxes(uint8,uint8,uint8,uint8,uint8,uint8) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamSetTaxes(uint8,uint8,uint8,uint8,uint8,uint8) (#1337-1348)
TeamChangeMarketingShare(uint8) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamChangeMarketingShare(uint8) (#1351-1354)
TeamCreateLPandBNB() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamCreateLPandBNB() (#1356-1358)
SetupEnableTrading() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.SetupEnableTrading() (#1386-1388)
SetupLiquidityTokenAddress(address) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.SetupLiquidityTokenAddress(address) (#1390-1392)
TeamUnlockLiquidityInSeconds(uint256) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamUnlockLiquidityInSeconds(uint256) (#1398-1400)
TeamReleaseLiquidity() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamReleaseLiquidity() (#1408-1418)
TeamRemoveLiquidity(bool) should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveLiquidity(bool) (#1420-1449)
TeamRemoveRemainingBNB() should be declared external:
- CRYPTOISMYDRUGMYPCISMYDEALERANDJEETSARETHEPOLICE.TeamRemoveRemainingBNB() (#1451-1456)
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