Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
Address._functionCallWithValue(address,bytes,uint256,string) (#349-370) is never used and should be removed
Address.functionCall(address,bytes) (#309-311) is never used and should be removed
Address.functionCall(address,bytes,string) (#319-321) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#334-336) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#344-347) is never used and should be removed
Address.isContract(address) (#256-265) is never used and should be removed
Address.sendValue(address,uint256) (#283-289) is never used and should be removed
Context._msgData() (#18-21) is never used and should be removed
SafeMath.mod(uint256,uint256) (#216-218) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#232-235) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#283-289):
- (success) = recipient.call{value: amount}() (#287)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#349-370):
- (success,returndata) = target.call{value: weiValue}(data) (#353)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Constant POODLECOIN._tTotal (#439) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#19)" inContext (#13-22)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable POODLECOIN._transferToExcluded(address,address,uint256).rTransferAmount (#593) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN.reflectionFromToken(uint256,bool).rTransferAmount (#526) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN._transferBothExcluded(address,address,uint256).rTransferAmount (#611) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._transferBothExcluded(address,address,uint256).rTransferAmount (#611) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN._transferStandard(address,address,uint256).rTransferAmount (#585) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN._transferStandard(address,address,uint256).rTransferAmount (#585) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._transferBothExcluded(address,address,uint256).rTransferAmount (#611) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN._getRValues(uint256,uint256,uint256).rTransferAmount (#641) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Variable POODLECOIN._transferBothExcluded(address,address,uint256).rTransferAmount (#611) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN._getValues(uint256).rTransferAmount (#628) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN._transferStandard(address,address,uint256).rTransferAmount (#585) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN._getRValues(uint256,uint256,uint256).rTransferAmount (#641) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN._getRValues(uint256,uint256,uint256).rTransferAmount (#641) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._transferFromExcluded(address,address,uint256).rTransferAmount (#602) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Variable POODLECOIN._transferBothExcluded(address,address,uint256).rTransferAmount (#611) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._getValues(uint256).rTransferAmount (#628) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN._transferStandard(address,address,uint256).rTransferAmount (#585) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._getRValues(uint256,uint256,uint256).rTransferAmount (#641) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN.reflectionFromToken(uint256,bool).rTransferAmount (#526) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Variable POODLECOIN._transferFromExcluded(address,address,uint256).rTransferAmount (#602) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN._getRValues(uint256,uint256,uint256).rTransferAmount (#641) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._transferFromExcluded(address,address,uint256).rTransferAmount (#602) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN._transferBothExcluded(address,address,uint256).rTransferAmount (#611) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Variable POODLECOIN.reflectionFromToken(uint256,bool).rTransferAmount (#526) is too similar to POODLECOIN._transferToExcluded(address,address,uint256).tTransferAmount (#593)
Variable POODLECOIN._transferStandard(address,address,uint256).rTransferAmount (#585) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Variable POODLECOIN._transferFromExcluded(address,address,uint256).rTransferAmount (#602) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN._transferFromExcluded(address,address,uint256).rTransferAmount (#602) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._getValues(uint256).rTransferAmount (#628) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN._transferStandard(address,address,uint256).rTransferAmount (#585) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN._transferToExcluded(address,address,uint256).rTransferAmount (#593) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN._getValues(uint256).rTransferAmount (#628) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._transferToExcluded(address,address,uint256).rTransferAmount (#593) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._transferFromExcluded(address,address,uint256).rTransferAmount (#602) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._getValues(uint256).rTransferAmount (#628) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._getRValues(uint256,uint256,uint256).rTransferAmount (#641) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN.reflectionFromToken(uint256,bool).rTransferAmount (#526) is too similar to POODLECOIN._transferBothExcluded(address,address,uint256).tTransferAmount (#611)
Variable POODLECOIN.reflectionFromToken(uint256,bool).rTransferAmount (#526) is too similar to POODLECOIN._transferStandard(address,address,uint256).tTransferAmount (#585)
Variable POODLECOIN._transferToExcluded(address,address,uint256).rTransferAmount (#593) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._transferToExcluded(address,address,uint256).rTransferAmount (#593) is too similar to POODLECOIN._getTValues(uint256).tTransferAmount (#634)
Variable POODLECOIN._getValues(uint256).rTransferAmount (#628) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Variable POODLECOIN.reflectionFromToken(uint256,bool).rTransferAmount (#526) is too similar to POODLECOIN._getValues(uint256).tTransferAmount (#626)
Variable POODLECOIN._transferToExcluded(address,address,uint256).rTransferAmount (#593) is too similar to POODLECOIN._transferFromExcluded(address,address,uint256).tTransferAmount (#602)
Prevent variables from having similar names.
Additional information: link
POODLECOIN._getTValues(uint256) (#632-636) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(2) (#633)
Consider ordering multiplication before division.
Additional information: link
POODLECOIN.allowance(address,address).owner (#478) shadows:
- Ownable.owner() (#390-392) (function)
POODLECOIN._approve(address,address,uint256).owner (#559) shadows:
- Ownable.owner() (#390-392) (function)
Rename the local variables that shadow another component.
Additional information: link
Address.isContract(address) (#256-265) uses assembly
- INLINE ASM (#263)
Address._functionCallWithValue(address,bytes,uint256,string) (#349-370) uses assembly
- INLINE ASM (#362-365)
Do not use evm assembly.
Additional information: link
POODLECOIN.includeAccount(address) (#546-557) has costly operations inside a loop:
- _excluded.pop() (#553)
Use a local variable to hold the loop computation result.
Additional information: link
POODLECOIN.slitherConstructorConstantVariables() (#427-662) uses literals with too many digits:
- _tTotal = 1000000000 * 10 ** 6 (#439)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
POODLECOIN._decimals (#445) should be constant
POODLECOIN._name (#443) should be constant
POODLECOIN._symbol (#444) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
owner() should be declared external:
- Ownable.owner() (#390-392)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#409-412)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#418-422)
name() should be declared external:
- POODLECOIN.name() (#452-454)
symbol() should be declared external:
- POODLECOIN.symbol() (#456-458)
decimals() should be declared external:
- POODLECOIN.decimals() (#460-462)
totalSupply() should be declared external:
- POODLECOIN.totalSupply() (#464-466)
balanceOf(address) should be declared external:
- POODLECOIN.balanceOf(address) (#468-471)
transfer(address,uint256) should be declared external:
- POODLECOIN.transfer(address,uint256) (#473-476)
allowance(address,address) should be declared external:
- POODLECOIN.allowance(address,address) (#478-480)
approve(address,uint256) should be declared external:
- POODLECOIN.approve(address,uint256) (#482-485)
transferFrom(address,address,uint256) should be declared external:
- POODLECOIN.transferFrom(address,address,uint256) (#487-491)
increaseAllowance(address,uint256) should be declared external:
- POODLECOIN.increaseAllowance(address,uint256) (#493-496)
decreaseAllowance(address,uint256) should be declared external:
- POODLECOIN.decreaseAllowance(address,uint256) (#498-501)
isExcluded(address) should be declared external:
- POODLECOIN.isExcluded(address) (#503-505)
totalFees() should be declared external:
- POODLECOIN.totalFees() (#507-509)
reflect(uint256) should be declared external:
- POODLECOIN.reflect(uint256) (#511-518)
reflectionFromToken(uint256,bool) should be declared external:
- POODLECOIN.reflectionFromToken(uint256,bool) (#520-529)
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