Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
Low level call in Address.sendValue(address,uint256) (#288-294):
- (success) = recipient.call{value: amount}() (#292)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#354-375):
- (success,returndata) = target.call{value: weiValue}(data) (#358)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
BELARUS._getTValues(uint256) (#637-641) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(2) (#638)
Consider ordering multiplication before division.
Additional information: link
BELARUS.allowance(address,address).owner (#483) shadows:
- Ownable.owner() (#395-397) (function)
BELARUS._approve(address,address,uint256).owner (#564) shadows:
- Ownable.owner() (#395-397) (function)
Rename the local variables that shadow another component.
Additional information: link
Address.isContract(address) (#261-270) uses assembly
- INLINE ASM (#268)
Address._functionCallWithValue(address,bytes,uint256,string) (#354-375) uses assembly
- INLINE ASM (#367-370)
Do not use evm assembly.
Additional information: link
BELARUS.includeAccount(address) (#551-562) has costly operations inside a loop:
- _excluded.pop() (#558)
Use a local variable to hold the loop computation result.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (#354-375) is never used and should be removed
Address.functionCall(address,bytes) (#314-316) is never used and should be removed
Address.functionCall(address,bytes,string) (#324-326) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#339-341) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#349-352) is never used and should be removed
Address.isContract(address) (#261-270) is never used and should be removed
Address.sendValue(address,uint256) (#288-294) is never used and should be removed
Context._msgData() (#23-26) is never used and should be removed
SafeMath.mod(uint256,uint256) (#221-223) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#237-240) is never used and should be removed
Remove unused functions.
Additional information: link
Constant BELARUS._tTotal (#444) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#24)" inContext (#18-27)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable BELARUS.reflectionFromToken(uint256,bool).rTransferAmount (#531) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._transferBothExcluded(address,address,uint256).rTransferAmount (#616) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS._getRValues(uint256,uint256,uint256).rTransferAmount (#646) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS._transferBothExcluded(address,address,uint256).rTransferAmount (#616) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._transferStandard(address,address,uint256).rTransferAmount (#590) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS._transferBothExcluded(address,address,uint256).rTransferAmount (#616) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._transferStandard(address,address,uint256).rTransferAmount (#590) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Variable BELARUS._getRValues(uint256,uint256,uint256).rTransferAmount (#646) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS._transferStandard(address,address,uint256).rTransferAmount (#590) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS._getRValues(uint256,uint256,uint256).rTransferAmount (#646) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._transferFromExcluded(address,address,uint256).rTransferAmount (#607) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS._getValues(uint256).rTransferAmount (#633) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS._transferStandard(address,address,uint256).rTransferAmount (#590) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._getValues(uint256).rTransferAmount (#633) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._getRValues(uint256,uint256,uint256).rTransferAmount (#646) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._transferFromExcluded(address,address,uint256).rTransferAmount (#607) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS.reflectionFromToken(uint256,bool).rTransferAmount (#531) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS._transferBothExcluded(address,address,uint256).rTransferAmount (#616) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS._transferStandard(address,address,uint256).rTransferAmount (#590) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._transferFromExcluded(address,address,uint256).rTransferAmount (#607) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._transferBothExcluded(address,address,uint256).rTransferAmount (#616) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Variable BELARUS._transferToExcluded(address,address,uint256).rTransferAmount (#598) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS.reflectionFromToken(uint256,bool).rTransferAmount (#531) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS._transferBothExcluded(address,address,uint256).rTransferAmount (#616) is too similar to BELARUS._transferToExcluded(address,address,uint256).tTransferAmount (#598)
Variable BELARUS._transferFromExcluded(address,address,uint256).rTransferAmount (#607) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS.reflectionFromToken(uint256,bool).rTransferAmount (#531) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Variable BELARUS._transferStandard(address,address,uint256).rTransferAmount (#590) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS._getValues(uint256).rTransferAmount (#633) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS._transferToExcluded(address,address,uint256).rTransferAmount (#598) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS._transferFromExcluded(address,address,uint256).rTransferAmount (#607) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._getValues(uint256).rTransferAmount (#633) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._transferToExcluded(address,address,uint256).rTransferAmount (#598) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._getRValues(uint256,uint256,uint256).rTransferAmount (#646) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS._transferFromExcluded(address,address,uint256).rTransferAmount (#607) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Variable BELARUS.reflectionFromToken(uint256,bool).rTransferAmount (#531) is too similar to BELARUS._transferBothExcluded(address,address,uint256).tTransferAmount (#616)
Variable BELARUS._getValues(uint256).rTransferAmount (#633) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Variable BELARUS._transferToExcluded(address,address,uint256).rTransferAmount (#598) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Variable BELARUS._getValues(uint256).rTransferAmount (#633) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS.reflectionFromToken(uint256,bool).rTransferAmount (#531) is too similar to BELARUS._getValues(uint256).tTransferAmount (#631)
Variable BELARUS._transferToExcluded(address,address,uint256).rTransferAmount (#598) is too similar to BELARUS._transferFromExcluded(address,address,uint256).tTransferAmount (#607)
Variable BELARUS._transferToExcluded(address,address,uint256).rTransferAmount (#598) is too similar to BELARUS._getTValues(uint256).tTransferAmount (#639)
Variable BELARUS._getRValues(uint256,uint256,uint256).rTransferAmount (#646) is too similar to BELARUS._transferStandard(address,address,uint256).tTransferAmount (#590)
Prevent variables from having similar names.
Additional information: link
BELARUS.slitherConstructorConstantVariables() (#432-667) uses literals with too many digits:
- _tTotal = 1000000000 * 10 ** 6 (#444)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
BELARUS._decimals (#450) should be constant
BELARUS._name (#448) should be constant
BELARUS._symbol (#449) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
owner() should be declared external:
- Ownable.owner() (#395-397)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#414-417)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#423-427)
name() should be declared external:
- BELARUS.name() (#457-459)
symbol() should be declared external:
- BELARUS.symbol() (#461-463)
decimals() should be declared external:
- BELARUS.decimals() (#465-467)
totalSupply() should be declared external:
- BELARUS.totalSupply() (#469-471)
balanceOf(address) should be declared external:
- BELARUS.balanceOf(address) (#473-476)
transfer(address,uint256) should be declared external:
- BELARUS.transfer(address,uint256) (#478-481)
allowance(address,address) should be declared external:
- BELARUS.allowance(address,address) (#483-485)
approve(address,uint256) should be declared external:
- BELARUS.approve(address,uint256) (#487-490)
transferFrom(address,address,uint256) should be declared external:
- BELARUS.transferFrom(address,address,uint256) (#492-496)
increaseAllowance(address,uint256) should be declared external:
- BELARUS.increaseAllowance(address,uint256) (#498-501)
decreaseAllowance(address,uint256) should be declared external:
- BELARUS.decreaseAllowance(address,uint256) (#503-506)
isExcluded(address) should be declared external:
- BELARUS.isExcluded(address) (#508-510)
totalFees() should be declared external:
- BELARUS.totalFees() (#512-514)
reflect(uint256) should be declared external:
- BELARUS.reflect(uint256) (#516-523)
reflectionFromToken(uint256,bool) should be declared external:
- BELARUS.reflectionFromToken(uint256,bool) (#525-534)
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