Save Ralph is aiming to use part of the revenue to subsidize the first mint transaction (NFT creation transaction) for users, in addition to other business strategies to fuel the growth of the platform. The Save Ralph Token Project is a solution to the limitations faced by the intellectual property market, such as challenging licensing and paperwork requirements. NFTs instead represent an easily accessible alternative available to anyone with just a few clicks.
Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
SaveRalphToken.allowance(address,address).owner (#341) shadows:
- Ownable.owner() (#107-109) (function)
SaveRalphToken._approve(address,address,uint256).owner (#453) shadows:
- Ownable.owner() (#107-109) (function)
Rename the local variables that shadow another component.
Additional information: link
Ownable.unlockOwner() (#144-149) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp > _lockTime,Contract is locked until 7 days) (#146)
Avoid relying on block.timestamp.
Additional information: link
Address.isContract(address) (#156-165) uses assembly
- INLINE ASM (#163)
Address._functionCallWithValue(address,bytes,uint256,string) (#192-213) uses assembly
- INLINE ASM (#205-208)
Do not use evm assembly.
Additional information: link
SaveRalphToken.ContractLock() (#286-289) compares to a boolean constant:
-require(bool,string)(_lock == false,Transaction Blocked) (#287)
Remove the equality to the boolean constant.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (#192-213) is never used and should be removed
Address.functionCall(address,bytes) (#175-177) is never used and should be removed
Address.functionCall(address,bytes,string) (#179-181) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#183-185) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#187-190) is never used and should be removed
Address.isContract(address) (#156-165) is never used and should be removed
Address.sendValue(address,uint256) (#167-173) is never used and should be removed
Context._msgData() (#25-28) is never used and should be removed
SafeMath.div(uint256,uint256) (#70-72) is never used and should be removed
SafeMath.div(uint256,uint256,string) (#74-81) is never used and should be removed
SafeMath.mod(uint256,uint256) (#83-85) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#87-90) is never used and should be removed
SaveRalphToken._burnFrom(address,uint256) (#462-465) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#167-173):
- (success) = recipient.call{value: amount}() (#171)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#192-213):
- (success,returndata) = target.call{value: weiValue}(data) (#196)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Parameter SaveRalphToken.blackList(address)._user (#382) is not in mixedCase
Parameter SaveRalphToken.removeFromBlacklist(address)._user (#387) is not in mixedCase
Parameter SaveRalphToken.checkBlackList(address)._user (#392) is not in mixedCase
Function SaveRalphToken.Sweep() (#406-409) is not in mixedCase
Parameter SaveRalphToken.transferForeignToken(address,address)._token (#412) is not in mixedCase
Parameter SaveRalphToken.transferForeignToken(address,address)._to (#412) is not in mixedCase
Modifier SaveRalphToken.ContractLock() (#286-289) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#26)" inContext (#20-29)
Remove redundant statements if they congest code but offer no value.
Additional information: link
SaveRalphToken.constructor() (#293-302) uses literals with too many digits:
- _intTotalSupply = 1000000000000000 (#297)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#116-119)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#121-123)
geUnlockTime() should be declared external:
- Ownable.geUnlockTime() (#131-133)
lockOwnerForTime(uint256) should be declared external:
- Ownable.lockOwnerForTime(uint256) (#136-141)
unlockOwner() should be declared external:
- Ownable.unlockOwner() (#144-149)
increaseAllowance(address,uint256) should be declared external:
- SaveRalphToken.increaseAllowance(address,uint256) (#359-362)
decreaseAllowance(address,uint256) should be declared external:
- SaveRalphToken.decreaseAllowance(address,uint256) (#365-368)
mint(uint256) should be declared external:
- SaveRalphToken.mint(uint256) (#371-374)
burn(uint256) should be declared external:
- SaveRalphToken.burn(uint256) (#376-379)
blackList(address) should be declared external:
- SaveRalphToken.blackList(address) (#382-385)
removeFromBlacklist(address) should be declared external:
- SaveRalphToken.removeFromBlacklist(address) (#387-390)
checkBlackList(address) should be declared external:
- SaveRalphToken.checkBlackList(address) (#392-394)
transferForeignToken(address,address) should be declared external:
- SaveRalphToken.transferForeignToken(address,address) (#412-416)
Use the external attribute for functions never called from the contract.
Additional information: link
Average PancakeSwap trading volume, liqudity, number of swaps are extremely low. Token seems to be dead.
Token is deployed only at one blockchain
Token has only one trading pair
Unable to find PancakeSwap trading pair to compute liquidity.
Unable to find PancakeSwap trading pair to compute volume.
Unable to find PancakeSwap trading pair to compute number of swaps.
Young tokens have high risks of scam / price dump / death
Token has no active CoinMarketCap listing / rank
Young tokens have high risks of price dump / death
Young tokens have high risks of price dump / death
Young tokens have high risks of price dump / death
Token has relatively low CoinGecko rank
Last post in Twitter was more than 30 days ago
Unable to find Youtube account