Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
PandaCoin._getTValues(uint256) (#635-639) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(2) (#636)
Consider ordering multiplication before division.
Additional information: link
PandaCoin.allowance(address,address).owner (#481) shadows:
- Ownable.owner() (#393-395) (function)
PandaCoin._approve(address,address,uint256).owner (#562) shadows:
- Ownable.owner() (#393-395) (function)
Rename the local variables that shadow another component.
Additional information: link
Address.isContract(address) (#259-268) uses assembly
- INLINE ASM (#266)
Address._functionCallWithValue(address,bytes,uint256,string) (#352-373) uses assembly
- INLINE ASM (#365-368)
Do not use evm assembly.
Additional information: link
PandaCoin.includeAccount(address) (#549-560) has costly operations inside a loop:
- _excluded.pop() (#556)
Use a local variable to hold the loop computation result.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (#352-373) is never used and should be removed
Address.functionCall(address,bytes) (#312-314) is never used and should be removed
Address.functionCall(address,bytes,string) (#322-324) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#337-339) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#347-350) is never used and should be removed
Address.isContract(address) (#259-268) is never used and should be removed
Address.sendValue(address,uint256) (#286-292) is never used and should be removed
Context._msgData() (#21-24) is never used and should be removed
SafeMath.mod(uint256,uint256) (#219-221) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#235-238) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#286-292):
- (success) = recipient.call{value: amount}() (#290)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#352-373):
- (success,returndata) = target.call{value: weiValue}(data) (#356)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Constant PandaCoin._tTotal (#442) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#22)" inContext (#16-25)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable PandaCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#605) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#605) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._transferStandard(address,address,uint256).rTransferAmount (#588) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin._transferToExcluded(address,address,uint256).rTransferAmount (#596) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin._transferStandard(address,address,uint256).rTransferAmount (#588) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin._transferStandard(address,address,uint256).rTransferAmount (#588) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin._transferStandard(address,address,uint256).rTransferAmount (#588) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._getValues(uint256).rTransferAmount (#631) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable PandaCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin._getValues(uint256).rTransferAmount (#631) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#605) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._transferStandard(address,address,uint256).rTransferAmount (#588) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin._transferToExcluded(address,address,uint256).rTransferAmount (#596) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable PandaCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#644) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin.reflectionFromToken(uint256,bool).rTransferAmount (#529) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin.reflectionFromToken(uint256,bool).rTransferAmount (#529) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable PandaCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#644) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable PandaCoin._getValues(uint256).rTransferAmount (#631) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin._transferToExcluded(address,address,uint256).rTransferAmount (#596) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._transferToExcluded(address,address,uint256).rTransferAmount (#596) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#605) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#644) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#644) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin.reflectionFromToken(uint256,bool).rTransferAmount (#529) is too similar to PandaCoin._getTValues(uint256).tTransferAmount (#637)
Variable PandaCoin._getValues(uint256).rTransferAmount (#631) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin.reflectionFromToken(uint256,bool).rTransferAmount (#529) is too similar to PandaCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#605)
Variable PandaCoin._transferToExcluded(address,address,uint256).rTransferAmount (#596) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#605) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#605) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable PandaCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#644) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin._getValues(uint256).rTransferAmount (#631) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin.reflectionFromToken(uint256,bool).rTransferAmount (#529) is too similar to PandaCoin._transferStandard(address,address,uint256).tTransferAmount (#588)
Variable PandaCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#644) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin.reflectionFromToken(uint256,bool).rTransferAmount (#529) is too similar to PandaCoin._transferToExcluded(address,address,uint256).tTransferAmount (#596)
Variable PandaCoin._transferToExcluded(address,address,uint256).rTransferAmount (#596) is too similar to PandaCoin._getValues(uint256).tTransferAmount (#629)
Variable PandaCoin._getValues(uint256).rTransferAmount (#631) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable PandaCoin._transferStandard(address,address,uint256).rTransferAmount (#588) is too similar to PandaCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Prevent variables from having similar names.
Additional information: link
PandaCoin.slitherConstructorConstantVariables() (#430-665) uses literals with too many digits:
- _tTotal = 1000000000 * 10 ** 6 (#442)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
PandaCoin._decimals (#448) should be constant
PandaCoin._name (#446) should be constant
PandaCoin._symbol (#447) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
owner() should be declared external:
- Ownable.owner() (#393-395)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#412-415)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#421-425)
name() should be declared external:
- PandaCoin.name() (#455-457)
symbol() should be declared external:
- PandaCoin.symbol() (#459-461)
decimals() should be declared external:
- PandaCoin.decimals() (#463-465)
totalSupply() should be declared external:
- PandaCoin.totalSupply() (#467-469)
balanceOf(address) should be declared external:
- PandaCoin.balanceOf(address) (#471-474)
transfer(address,uint256) should be declared external:
- PandaCoin.transfer(address,uint256) (#476-479)
allowance(address,address) should be declared external:
- PandaCoin.allowance(address,address) (#481-483)
approve(address,uint256) should be declared external:
- PandaCoin.approve(address,uint256) (#485-488)
transferFrom(address,address,uint256) should be declared external:
- PandaCoin.transferFrom(address,address,uint256) (#490-494)
increaseAllowance(address,uint256) should be declared external:
- PandaCoin.increaseAllowance(address,uint256) (#496-499)
decreaseAllowance(address,uint256) should be declared external:
- PandaCoin.decreaseAllowance(address,uint256) (#501-504)
isExcluded(address) should be declared external:
- PandaCoin.isExcluded(address) (#506-508)
totalFees() should be declared external:
- PandaCoin.totalFees() (#510-512)
reflect(uint256) should be declared external:
- PandaCoin.reflect(uint256) (#514-521)
reflectionFromToken(uint256,bool) should be declared external:
- PandaCoin.reflectionFromToken(uint256,bool) (#523-532)
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