LifeCrypto is an innovative payment network and a new kind of money.
TokenRecover.recoverBEP20(address,uint256) (#579-581) ignores return value by IBEP20(tokenAddress).transfer(owner(),tokenAmount) (#580)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
Contract ownership is not renounced (belongs to a wallet)
Redundant expression "this (#203)" inContext (#197-206)
Remove redundant statements if they congest code but offer no value.
Additional information: link
BEP20.allowance(address,address).owner (#739) shadows:
- Ownable.owner() (#538-540) (function)
BEP20._approve(address,address,uint256).owner (#840) shadows:
- Ownable.owner() (#538-540) (function)
LifeBEP20.constructor(string,string,uint8,uint256,uint256).cap (#1020) shadows:
- BEP20Capped.cap() (#993-995) (function)
Rename the local variables that shadow another component.
Additional information: link
Address.isContract(address) (#214-218) uses assembly
- INLINE ASM (#216)
Address._verifyCallResult(bool,bytes,string) (#258-271) uses assembly
- INLINE ASM (#263-266)
Do not use evm assembly.
Additional information: link
AccessControl._setRoleAdmin(bytes32,bytes32) (#467-470) is never used and should be removed
Address._verifyCallResult(bool,bytes,string) (#258-271) is never used and should be removed
Address.functionCall(address,bytes) (#227-229) is never used and should be removed
Address.functionCall(address,bytes,string) (#231-233) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#235-237) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#239-245) is never used and should be removed
Address.functionStaticCall(address,bytes) (#247-249) is never used and should be removed
Address.functionStaticCall(address,bytes,string) (#251-256) is never used and should be removed
Address.isContract(address) (#214-218) is never used and should be removed
Address.sendValue(address,uint256) (#220-225) is never used and should be removed
Context._msgData() (#202-205) is never used and should be removed
EnumerableSet.add(EnumerableSet.Bytes32Set,bytes32) (#337-339) is never used and should be removed
EnumerableSet.add(EnumerableSet.UintSet,uint256) (#385-387) is never used and should be removed
EnumerableSet.at(EnumerableSet.Bytes32Set,uint256) (#353-355) is never used and should be removed
EnumerableSet.at(EnumerableSet.UintSet,uint256) (#401-403) is never used and should be removed
EnumerableSet.contains(EnumerableSet.Bytes32Set,bytes32) (#345-347) is never used and should be removed
EnumerableSet.contains(EnumerableSet.UintSet,uint256) (#393-395) is never used and should be removed
EnumerableSet.length(EnumerableSet.Bytes32Set) (#349-351) is never used and should be removed
EnumerableSet.length(EnumerableSet.UintSet) (#397-399) is never used and should be removed
EnumerableSet.remove(EnumerableSet.Bytes32Set,bytes32) (#341-343) is never used and should be removed
EnumerableSet.remove(EnumerableSet.UintSet,uint256) (#389-391) is never used and should be removed
SafeMath.div(uint256,uint256) (#162-164) is never used and should be removed
SafeMath.div(uint256,uint256,string) (#166-171) is never used and should be removed
SafeMath.mod(uint256,uint256) (#173-175) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#177-180) is never used and should be removed
SafeMath.mul(uint256,uint256) (#151-160) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#220-225):
- (success) = recipient.call{value: amount}() (#223)
Low level call in Address.functionCallWithValue(address,bytes,uint256,string) (#239-245):
- (success,returndata) = target.call{value: value}(data) (#243)
Low level call in Address.functionStaticCall(address,bytes,string) (#251-256):
- (success,returndata) = target.staticcall(data) (#254)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
getRoleMemberCount(bytes32) should be declared external:
- AccessControl.getRoleMemberCount(bytes32) (#433-435)
getRoleMember(bytes32,uint256) should be declared external:
- AccessControl.getRoleMember(bytes32,uint256) (#437-439)
getRoleAdmin(bytes32) should be declared external:
- AccessControl.getRoleAdmin(bytes32) (#441-443)
grantRole(bytes32,address) should be declared external:
- AccessControl.grantRole(bytes32,address) (#445-449)
revokeRole(bytes32,address) should be declared external:
- AccessControl.revokeRole(bytes32,address) (#451-455)
renounceRole(bytes32,address) should be declared external:
- AccessControl.renounceRole(bytes32,address) (#457-461)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#557-560)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#566-570)
recoverBEP20(address,uint256) should be declared external:
- TokenRecover.recoverBEP20(address,uint256) (#579-581)
name() should be declared external:
- BEP20.name() (#638-640)
symbol() should be declared external:
- BEP20.symbol() (#646-648)
decimals() should be declared external:
- BEP20.decimals() (#663-665)
balanceOf(address) should be declared external:
- BEP20.balanceOf(address) (#677-679)
getOwner() should be declared external:
- BEP20.getOwner() (#684-686)
transfer(address,uint256) should be declared external:
- BEP20.transfer(address,uint256) (#696-699)
transferFrom(address,address,uint256) should be declared external:
- BEP20.transferFrom(address,address,uint256) (#714-722)
approve(address,uint256) should be declared external:
- BEP20.approve(address,uint256) (#731-734)
increaseAllowance(address,uint256) should be declared external:
- BEP20.increaseAllowance(address,uint256) (#755-758)
decreaseAllowance(address,uint256) should be declared external:
- BEP20.decreaseAllowance(address,uint256) (#774-780)
mintingFinished() should be declared external:
- BEP20Mintable.mintingFinished() (#905-907)
mint(address,uint256) should be declared external:
- BEP20Mintable.mint(address,uint256) (#917-919)
finishMinting() should be declared external:
- BEP20Mintable.finishMinting() (#926-928)
burn(uint256) should be declared external:
- BEP20Burnable.burn(uint256) (#955-957)
burnFrom(address,uint256) should be declared external:
- BEP20Burnable.burnFrom(address,uint256) (#970-975)
cap() should be declared external:
- BEP20Capped.cap() (#993-995)
Use the external attribute for functions never called from the contract.
Additional information: link
Young tokens have high risks of price dump / death
Young tokens have high risks of price dump / death
Unable to find Youtube account
Unable to find Discord account