A new type of NFT Yield Farming + Gaming Platform
IZooToken (#597-605) has incorrect ERC20 function interface:IZooToken.transfer(address,uint256) (#602)
Set the appropriate return values and types for the defined ERC20 functions.
Additional information: link
Not a direct threat, but may indicate unreliable intentions of developer. Widespread names (e.g. Elon, King, Moon, Doge) are common among meme-tokens and scams. The allow to gain free hype and attract unexperienced investors.
Contract ownership is semi-renounced (passed to a contract)
Pragma version^0.8.0 (#2) allows old versions
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
ZooToken (#607-619) should inherit from IZooToken (#597-605)
Inherit from the missing interface or contract.
Additional information: link
Parameter ZooToken.reward(address,uint256)._to (#610) is not in mixedCase
Parameter ZooToken.reward(address,uint256)._amount (#610) is not in mixedCase
Parameter ZooToken.spend(uint256)._amount (#615) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#20)" inContext (#14-23)
Remove redundant statements if they congest code but offer no value.
Additional information: link
ZooToken.reward(address,uint256) (#610-613) uses literals with too many digits:
- require(bool)(totalSupply() < 2000000000 * 1e18) (#611)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
Context._msgData() (#19-22) is never used and should be removed
Remove unused functions.
Additional information: link
name() should be declared external:
- ERC20.name() (#185-187)
symbol() should be declared external:
- ERC20.symbol() (#193-195)
decimals() should be declared external:
- ERC20.decimals() (#210-212)
balanceOf(address) should be declared external:
- ERC20.balanceOf(address) (#224-232)
transfer(address,uint256) should be declared external:
- ERC20.transfer(address,uint256) (#242-250)
approve(address,uint256) should be declared external:
- ERC20.approve(address,uint256) (#272-280)
transferFrom(address,address,uint256) should be declared external:
- ERC20.transferFrom(address,address,uint256) (#295-310)
increaseAllowance(address,uint256) should be declared external:
- ERC20.increaseAllowance(address,uint256) (#324-335)
decreaseAllowance(address,uint256) should be declared external:
- ERC20.decreaseAllowance(address,uint256) (#351-364)
burn(uint256) should be declared external:
- ERC20Burnable.burn(uint256) (#501-503)
burnFrom(address,uint256) should be declared external:
- ERC20Burnable.burnFrom(address,uint256) (#516-524)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#578-581)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#587-594)
reward(address,uint256) should be declared external:
- ZooToken.reward(address,uint256) (#610-613)
spend(uint256) should be declared external:
- ZooToken.spend(uint256) (#615-617)
Use the external attribute for functions never called from the contract.
Additional information: link
Token has relatively low CoinGecko rank
Last post in Twitter was more than 30 days ago
Unable to find Youtube account