Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
SAIYANCAT._getTValues(uint256) (#630-634) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(2) (#631)
Consider ordering multiplication before division.
Additional information: link
SAIYANCAT.allowance(address,address).owner (#476) shadows:
- Ownable.owner() (#388-390) (function)
SAIYANCAT._approve(address,address,uint256).owner (#557) shadows:
- Ownable.owner() (#388-390) (function)
Rename the local variables that shadow another component.
Additional information: link
Address.isContract(address) (#254-263) uses assembly
- INLINE ASM (#261)
Address._functionCallWithValue(address,bytes,uint256,string) (#347-368) uses assembly
- INLINE ASM (#360-363)
Do not use evm assembly.
Additional information: link
SAIYANCAT.includeAccount(address) (#544-555) has costly operations inside a loop:
- _excluded.pop() (#551)
Use a local variable to hold the loop computation result.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (#347-368) is never used and should be removed
Address.functionCall(address,bytes) (#307-309) is never used and should be removed
Address.functionCall(address,bytes,string) (#317-319) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#332-334) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#342-345) is never used and should be removed
Address.isContract(address) (#254-263) is never used and should be removed
Address.sendValue(address,uint256) (#281-287) is never used and should be removed
Context._msgData() (#16-19) is never used and should be removed
SafeMath.mod(uint256,uint256) (#214-216) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#230-233) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#281-287):
- (success) = recipient.call{value: amount}() (#285)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#347-368):
- (success,returndata) = target.call{value: weiValue}(data) (#351)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Constant SAIYANCAT._tTotal (#437) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#17)" inContext (#11-20)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable SAIYANCAT._transferToExcluded(address,address,uint256).rTransferAmount (#591) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT.reflectionFromToken(uint256,bool).rTransferAmount (#524) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT._transferBothExcluded(address,address,uint256).rTransferAmount (#609) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT._transferStandard(address,address,uint256).rTransferAmount (#583) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Variable SAIYANCAT._transferToExcluded(address,address,uint256).rTransferAmount (#591) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT._getRValues(uint256,uint256,uint256).rTransferAmount (#639) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Variable SAIYANCAT._transferBothExcluded(address,address,uint256).rTransferAmount (#609) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT._getValues(uint256).rTransferAmount (#626) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT._getValues(uint256).rTransferAmount (#626) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT._transferFromExcluded(address,address,uint256).rTransferAmount (#600) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Variable SAIYANCAT._transferStandard(address,address,uint256).rTransferAmount (#583) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT._getRValues(uint256,uint256,uint256).rTransferAmount (#639) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT._transferStandard(address,address,uint256).rTransferAmount (#583) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT._getRValues(uint256,uint256,uint256).rTransferAmount (#639) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT._getValues(uint256).rTransferAmount (#626) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT._transferStandard(address,address,uint256).rTransferAmount (#583) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._getRValues(uint256,uint256,uint256).rTransferAmount (#639) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._transferStandard(address,address,uint256).rTransferAmount (#583) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT._getRValues(uint256,uint256,uint256).rTransferAmount (#639) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT._transferFromExcluded(address,address,uint256).rTransferAmount (#600) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT.reflectionFromToken(uint256,bool).rTransferAmount (#524) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Variable SAIYANCAT._transferFromExcluded(address,address,uint256).rTransferAmount (#600) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT._transferStandard(address,address,uint256).rTransferAmount (#583) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT._getRValues(uint256,uint256,uint256).rTransferAmount (#639) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT.reflectionFromToken(uint256,bool).rTransferAmount (#524) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT._transferFromExcluded(address,address,uint256).rTransferAmount (#600) is too similar to SAIYANCAT._getTValues(uint256).tTransferAmount (#632)
Variable SAIYANCAT.reflectionFromToken(uint256,bool).rTransferAmount (#524) is too similar to SAIYANCAT._transferBothExcluded(address,address,uint256).tTransferAmount (#609)
Variable SAIYANCAT._transferToExcluded(address,address,uint256).rTransferAmount (#591) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT._transferBothExcluded(address,address,uint256).rTransferAmount (#609) is too similar to SAIYANCAT._transferToExcluded(address,address,uint256).tTransferAmount (#591)
Variable SAIYANCAT._transferFromExcluded(address,address,uint256).rTransferAmount (#600) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT._getValues(uint256).rTransferAmount (#626) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT._transferFromExcluded(address,address,uint256).rTransferAmount (#600) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._transferToExcluded(address,address,uint256).rTransferAmount (#591) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT._getValues(uint256).rTransferAmount (#626) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._transferBothExcluded(address,address,uint256).rTransferAmount (#609) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT._transferToExcluded(address,address,uint256).rTransferAmount (#591) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._transferBothExcluded(address,address,uint256).rTransferAmount (#609) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._getValues(uint256).rTransferAmount (#626) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Variable SAIYANCAT.reflectionFromToken(uint256,bool).rTransferAmount (#524) is too similar to SAIYANCAT._getValues(uint256).tTransferAmount (#624)
Variable SAIYANCAT._transferToExcluded(address,address,uint256).rTransferAmount (#591) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Variable SAIYANCAT.reflectionFromToken(uint256,bool).rTransferAmount (#524) is too similar to SAIYANCAT._transferStandard(address,address,uint256).tTransferAmount (#583)
Variable SAIYANCAT._transferBothExcluded(address,address,uint256).rTransferAmount (#609) is too similar to SAIYANCAT._transferFromExcluded(address,address,uint256).tTransferAmount (#600)
Prevent variables from having similar names.
Additional information: link
SAIYANCAT.slitherConstructorConstantVariables() (#425-660) uses literals with too many digits:
- _tTotal = 1000000000 * 10 ** 6 (#437)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
SAIYANCAT._decimals (#443) should be constant
SAIYANCAT._name (#441) should be constant
SAIYANCAT._symbol (#442) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
owner() should be declared external:
- Ownable.owner() (#388-390)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#407-410)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#416-420)
name() should be declared external:
- SAIYANCAT.name() (#450-452)
symbol() should be declared external:
- SAIYANCAT.symbol() (#454-456)
decimals() should be declared external:
- SAIYANCAT.decimals() (#458-460)
totalSupply() should be declared external:
- SAIYANCAT.totalSupply() (#462-464)
balanceOf(address) should be declared external:
- SAIYANCAT.balanceOf(address) (#466-469)
transfer(address,uint256) should be declared external:
- SAIYANCAT.transfer(address,uint256) (#471-474)
allowance(address,address) should be declared external:
- SAIYANCAT.allowance(address,address) (#476-478)
approve(address,uint256) should be declared external:
- SAIYANCAT.approve(address,uint256) (#480-483)
transferFrom(address,address,uint256) should be declared external:
- SAIYANCAT.transferFrom(address,address,uint256) (#485-489)
increaseAllowance(address,uint256) should be declared external:
- SAIYANCAT.increaseAllowance(address,uint256) (#491-494)
decreaseAllowance(address,uint256) should be declared external:
- SAIYANCAT.decreaseAllowance(address,uint256) (#496-499)
isExcluded(address) should be declared external:
- SAIYANCAT.isExcluded(address) (#501-503)
totalFees() should be declared external:
- SAIYANCAT.totalFees() (#505-507)
reflect(uint256) should be declared external:
- SAIYANCAT.reflect(uint256) (#509-516)
reflectionFromToken(uint256,bool) should be declared external:
- SAIYANCAT.reflectionFromToken(uint256,bool) (#518-527)
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