Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
TipToken.takeOutTokenInCase(address,uint256,address) (#327-329) ignores return value by IBEP20(_token).transfer(_to,_amount) (#328)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
BEP20._swap() (#209-217) performs a multiplication on the result of a division:
-per = totalBurn.div(deNum).mul(15) (#210)
BEP20._transfer(address,address,uint256) (#219-254) performs a multiplication on the result of a division:
-tax = amount.mul(taxPer).div(1000) (#222)
-taxA = tax.mul(30).div(100) (#232)
BEP20._transfer(address,address,uint256) (#219-254) performs a multiplication on the result of a division:
-tax = amount.mul(taxPer).div(1000) (#222)
-taxM = tax.mul(70).div(100) (#233)
Consider ordering multiplication before division.
Additional information: link
TipToken.setSwapAddress(address)._newAddress (#323) lacks a zero-check on :
- swapAddress = _newAddress (#324)
Check that the address is not zero.
Additional information: link
Address.isContract(address) (#69-75) uses assembly
- INLINE ASM (#73)
Do not use evm assembly.
Additional information: link
Address.isContract(address) (#69-75) is never used and should be removed
Remove unused functions.
Additional information: link
Variable BEP20._balances (#134) is not in mixedCase
Variable BEP20._allowances (#135) is not in mixedCase
Variable BEP20._totalSupply (#141) is not in mixedCase
Parameter TipToken.setSwapAddress(address)._newAddress (#323) is not in mixedCase
Parameter TipToken.takeOutTokenInCase(address,uint256,address)._token (#327) is not in mixedCase
Parameter TipToken.takeOutTokenInCase(address,uint256,address)._amount (#327) is not in mixedCase
Parameter TipToken.takeOutTokenInCase(address,uint256,address)._to (#327) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
TipToken.constructor() (#313-322) uses literals with too many digits:
- _totalSupply = 10000000 * 10 ** 8 * (10 ** 18) (#315)
TipToken.slitherConstructorVariables() (#311-331) uses literals with too many digits:
- deNum = 1000000 * 10 ** 26 (#145)
TipToken.slitherConstructorVariables() (#311-331) uses literals with too many digits:
- deadAddress = 0x000000000000000000000000000000000000dEaD (#153)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
BEP20.deNum (#145) should be constant
BEP20.deadAddress (#153) should be constant
BEP20.taxInitPer (#143) should be constant
BEP20.taxLimit (#144) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
owner() should be declared external:
- Ownable.owner() (#94-96)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#113-116)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#122-126)
totalSupply() should be declared external:
- BEP20.totalSupply() (#155-157)
taxPers() should be declared external:
- BEP20.taxPers() (#158-160)
balanceOf(address) should be declared external:
- BEP20.balanceOf(address) (#161-163)
transfer(address,uint256) should be declared external:
- BEP20.transfer(address,uint256) (#164-167)
allowance(address,address) should be declared external:
- BEP20.allowance(address,address) (#168-170)
approve(address,uint256) should be declared external:
- BEP20.approve(address,uint256) (#171-174)
transferFrom(address,address,uint256) should be declared external:
- BEP20.transferFrom(address,address,uint256) (#175-183)
increaseAllowance(address,uint256) should be declared external:
- BEP20.increaseAllowance(address,uint256) (#184-187)
decreaseAllowance(address,uint256) should be declared external:
- BEP20.decreaseAllowance(address,uint256) (#188-191)
burn(uint256) should be declared external:
- BEP20.burn(uint256) (#199-202)
name() should be declared external:
- BEP20Detailed.name() (#300-302)
symbol() should be declared external:
- BEP20Detailed.symbol() (#303-305)
decimals() should be declared external:
- BEP20Detailed.decimals() (#306-308)
takeOutTokenInCase(address,uint256,address) should be declared external:
- TipToken.takeOutTokenInCase(address,uint256,address) (#327-329)
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