StrongHands is a large community of financial activists, investors and enthusiasts engaged to set people free from state control of your money.
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
FreezableToken.toKey(address,uint256) (#497-504) is declared view but contains assembly code
Ensure the attributes of contracts compiled prior to Solidity 0.5.0 are correct.
Additional information: link
FreezableToken.releaseOnce() (#458-480) uses timestamp for comparisons
Dangerous comparisons:
- require(bool)(uint64(block.timestamp) > head) (#462)
FreezableToken.releaseAll() (#486-495) uses timestamp for comparisons
Dangerous comparisons:
- release != 0 && block.timestamp > release (#490)
FreezableToken.freeze(address,uint64) (#506-537) uses timestamp for comparisons
Dangerous comparisons:
- require(bool)(_until > block.timestamp) (#507)
Avoid relying on block.timestamp.
Additional information: link
FreezableToken.toKey(address,uint256) (#497-504) uses assembly
- INLINE ASM (#500-504)
Do not use evm assembly.
Additional information: link
FreezableToken.releaseOnce() (#458-480) has costly operations inside a loop:
- delete freezings[currentKey] (#468)
FreezableToken.releaseOnce() (#458-480) has costly operations inside a loop:
- delete chains[headKey] (#474)
FreezableToken.releaseOnce() (#458-480) has costly operations inside a loop:
- delete chains[currentKey] (#477)
Use a local variable to hold the loop computation result.
Additional information: link
SafeMath.div(uint256,uint256) (#42-47) is never used and should be removed
SafeMath.mul(uint256,uint256) (#26-37) is never used and should be removed
Remove unused functions.
Additional information: link
Pragma version^0.4.23 (#1) allows old versions
solc-0.4.24 is not recommended for deployment
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
Parameter BasicToken.transfer(address,uint256)._to (#92) is not in mixedCase
Parameter BasicToken.transfer(address,uint256)._value (#92) is not in mixedCase
Parameter BasicToken.balanceOf(address)._owner (#107) is not in mixedCase
Parameter StandardToken.transferFrom(address,address,uint256)._from (#151) is not in mixedCase
Parameter StandardToken.transferFrom(address,address,uint256)._to (#152) is not in mixedCase
Parameter StandardToken.transferFrom(address,address,uint256)._value (#153) is not in mixedCase
Parameter StandardToken.approve(address,uint256)._spender (#178) is not in mixedCase
Parameter StandardToken.approve(address,uint256)._value (#178) is not in mixedCase
Parameter StandardToken.allowance(address,address)._owner (#191) is not in mixedCase
Parameter StandardToken.allowance(address,address)._spender (#192) is not in mixedCase
Parameter StandardToken.increaseApproval(address,uint256)._spender (#212) is not in mixedCase
Parameter StandardToken.increaseApproval(address,uint256)._addedValue (#213) is not in mixedCase
Parameter StandardToken.decreaseApproval(address,uint256)._spender (#235) is not in mixedCase
Parameter StandardToken.decreaseApproval(address,uint256)._subtractedValue (#236) is not in mixedCase
Parameter Ownable.transferOwnership(address)._newOwner (#299) is not in mixedCase
Parameter MintableToken.mint(address,uint256)._to (#345) is not in mixedCase
Parameter MintableToken.mint(address,uint256)._amount (#346) is not in mixedCase
Parameter FreezableToken.balanceOf(address)._owner (#388) is not in mixedCase
Parameter FreezableToken.actualBalanceOf(address)._owner (#397) is not in mixedCase
Parameter FreezableToken.freezingBalanceOf(address)._owner (#401) is not in mixedCase
Parameter FreezableToken.freezingCount(address)._addr (#409) is not in mixedCase
Parameter FreezableToken.getFreezing(address,uint256)._addr (#422) is not in mixedCase
Parameter FreezableToken.getFreezing(address,uint256)._index (#422) is not in mixedCase
Parameter FreezableToken.freezeTo(address,uint256,uint64)._to (#440) is not in mixedCase
Parameter FreezableToken.freezeTo(address,uint256,uint64)._amount (#440) is not in mixedCase
Parameter FreezableToken.freezeTo(address,uint256,uint64)._until (#440) is not in mixedCase
Parameter FreezableToken.freeze(address,uint64)._to (#506) is not in mixedCase
Parameter FreezableToken.freeze(address,uint64)._until (#506) is not in mixedCase
Parameter BurnableToken.burn(uint256)._value (#553) is not in mixedCase
Parameter FreezableMintableToken.mintAndFreeze(address,uint256,uint64)._to (#626) is not in mixedCase
Parameter FreezableMintableToken.mintAndFreeze(address,uint256,uint64)._amount (#626) is not in mixedCase
Parameter FreezableMintableToken.mintAndFreeze(address,uint256,uint64)._until (#626) is not in mixedCase
Parameter MainToken.transferFrom(address,address,uint256)._from (#684) is not in mixedCase
Parameter MainToken.transferFrom(address,address,uint256)._to (#684) is not in mixedCase
Parameter MainToken.transferFrom(address,address,uint256)._value (#684) is not in mixedCase
Parameter MainToken.transfer(address,uint256)._to (#689) is not in mixedCase
Parameter MainToken.transfer(address,uint256)._value (#689) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
FreezableToken.toKey(address,uint256) (#497-504) uses literals with too many digits:
- result = 0x5749534800000000000000000000000000000000000000000000000000000000 (#499)
MainToken.init() (#695-722) uses literals with too many digits:
- amounts = (uint256(19350000000000000000000000),uint256(6450000000000000000000000),uint256(38700000000000000000000000),uint256(38700000000000000000000000),uint256(25800000000000000000000000)) (#705)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
totalSupply() should be declared external:
- BEP20Basic.totalSupply() (#9)
- BasicToken.totalSupply() (#83-85)
allowance(address,address) should be declared external:
- BEP20.allowance(address,address) (#118-119)
- StandardToken.allowance(address,address) (#190-199)
approve(address,uint256) should be declared external:
- BEP20.approve(address,uint256) (#124)
- StandardToken.approve(address,uint256) (#178-182)
increaseApproval(address,uint256) should be declared external:
- StandardToken.increaseApproval(address,uint256) (#211-222)
decreaseApproval(address,uint256) should be declared external:
- StandardToken.decreaseApproval(address,uint256) (#234-249)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#290-293)
actualBalanceOf(address) should be declared external:
- FreezableToken.actualBalanceOf(address) (#397-399)
freezingBalanceOf(address) should be declared external:
- FreezableToken.freezingBalanceOf(address) (#401-403)
freezingCount(address) should be declared external:
- FreezableToken.freezingCount(address) (#409-415)
freezeTo(address,uint256,uint64) should be declared external:
- FreezableToken.freezeTo(address,uint256,uint64) (#440-453)
releaseAll() should be declared external:
- FreezableToken.releaseAll() (#486-495)
burn(uint256) should be declared external:
- BurnableToken.burn(uint256) (#553-555)
unpause() should be declared external:
- Pausable.unpause() (#609-612)
name() should be declared external:
- MainToken.name() (#672-674)
symbol() should be declared external:
- MainToken.symbol() (#676-678)
decimals() should be declared external:
- MainToken.decimals() (#680-682)
Use the external attribute for functions never called from the contract.
Additional information: link
Young tokens have high risks of price dump / death
Unable to find Youtube account