FLy token is native token for FLyECO.
FLyECO includes the FLy Launchpad for IDO projects, FLy Trading Signals for manual and API trading, FLyDEX for traders and solutions for FLy token holders, such as FLy Staking, FLy Farming.
LockableToken.unlock(address) (#1402-1415) ignores return value by this.transfer(_of,unlockableTokens) (#1414)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
Redundant expression "this (#133)" inContext (#127-136)
Remove redundant statements if they congest code but offer no value.
Additional information: link
LockableToken.constructor(uint256,string,string)._name (#1245) shadows:
- ERC20._name (#179) (state variable)
LockableToken.constructor(uint256,string,string)._symbol (#1246) shadows:
- ERC20._symbol (#180) (state variable)
Rename the local variables that shadow another component.
Additional information: link
LockableToken.tokensUnlockable(address,bytes32) (#1392-1396) uses timestamp for comparisons
Dangerous comparisons:
- locked[_of][_reason].validity <= block.timestamp && ! locked[_of][_reason].claimed (#1393)
Avoid relying on block.timestamp.
Additional information: link
SafeMath.mul(uint256,uint256) (#1079-1081) is never used and should be removed
SafeMath.sub(uint256,uint256) (#1065-1067) is never used and should be removed
SafeMath.tryDiv(uint256,uint256) (#1022-1027) is never used and should be removed
AccessControl._setRoleAdmin(bytes32,bytes32) (#799-802) is never used and should be removed
SafeMath.tryMod(uint256,uint256) (#1034-1039) is never used and should be removed
SafeMath.sub(uint256,uint256,string) (#1126-1131) is never used and should be removed
Strings.toHexString(uint256) (#485-496) is never used and should be removed
Strings.toString(uint256) (#460-480) is never used and should be removed
SafeMath.tryAdd(uint256,uint256) (#980-986) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#1171-1176) is never used and should be removed
SafeMath.div(uint256,uint256,string) (#1149-1154) is never used and should be removed
Context._msgData() (#132-135) is never used and should be removed
SafeMath.mod(uint256,uint256) (#1109-1111) is never used and should be removed
SafeMath.div(uint256,uint256) (#1093-1095) is never used and should be removed
SafeMath.tryMul(uint256,uint256) (#1005-1015) is never used and should be removed
SafeMath.trySub(uint256,uint256) (#993-998) is never used and should be removed
Remove unused functions.
Additional information: link
Parameter LockableToken.tokensUnlockable(address,bytes32)._reason (#1392) is not in mixedCase
Parameter LockableToken.tokensLockedAtTime(address,bytes32,uint256)._time (#1331) is not in mixedCase
Parameter LockableToken.tokensLockedAtTime(address,bytes32,uint256)._of (#1329) is not in mixedCase
Parameter LockableToken.extendLock(bytes32,uint256)._time (#1353) is not in mixedCase
Parameter LockableToken.tokensLockedAtTime(address,bytes32,uint256)._reason (#1330) is not in mixedCase
Parameter LockableToken.tokensLocked(address,bytes32)._of (#1316) is not in mixedCase
Parameter LockableToken.tokensLocked(address,bytes32)._reason (#1316) is not in mixedCase
Parameter LockableToken.increaseLockAmount(bytes32,uint256)._reason (#1372) is not in mixedCase
Constant Strings.alphabet (#455) is not in UPPER_CASE_WITH_UNDERSCORES
Struct ERC1132.lockToken (#860-864) is not in CapWords
Parameter LockableToken.tokensUnlockable(address,bytes32)._of (#1392) is not in mixedCase
Parameter LockableToken.lock(bytes32,uint256,uint256)._time (#1261) is not in mixedCase
Parameter LockableToken.transferWithLock(address,bytes32,uint256,uint256)._to (#1289) is not in mixedCase
Parameter LockableToken.transferWithLock(address,bytes32,uint256,uint256)._reason (#1290) is not in mixedCase
Parameter LockableToken.getUnlockableTokens(address)._of (#1421) is not in mixedCase
Parameter LockableToken.extendLock(bytes32,uint256)._reason (#1353) is not in mixedCase
Parameter LockableToken.increaseLockAmount(bytes32,uint256)._amount (#1372) is not in mixedCase
Parameter LockableToken.unlock(address)._of (#1402) is not in mixedCase
Parameter LockableToken.transferWithLock(address,bytes32,uint256,uint256)._amount (#1291) is not in mixedCase
Parameter LockableToken.lock(bytes32,uint256,uint256)._reason (#1259) is not in mixedCase
Parameter LockableToken.lock(bytes32,uint256,uint256)._amount (#1260) is not in mixedCase
Parameter LockableToken.totalBalanceOf(address)._of (#1340) is not in mixedCase
Parameter LockableToken.transferWithLock(address,bytes32,uint256,uint256)._time (#1292) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
burn(uint256) should be declared external:
- BEP20FlyToken.burn(uint256) (#1454-1457)
- ERC20Burnable.burn(uint256) (#1199-1201)
transferFrom(address,address,uint256) should be declared external:
- ERC20.transferFrom(address,address,uint256) (#287-295)
burnFrom(address,uint256) should be declared external:
- ERC20Burnable.burnFrom(address,uint256) (#1214-1219)
totalBalanceOf(address) should be declared external:
- ERC1132.totalBalanceOf(address) (#922)
- LockableToken.totalBalanceOf(address) (#1340-1346)
transferWithLock(address,bytes32,uint256,uint256) should be declared external:
- LockableToken.transferWithLock(address,bytes32,uint256,uint256) (#1288-1307)
extendLock(bytes32,uint256) should be declared external:
- ERC1132.extendLock(bytes32,uint256) (#929)
- LockableToken.extendLock(bytes32,uint256) (#1353-1365)
decimals() should be declared external:
- BEP20FlyToken.decimals() (#1445-1447)
- ERC20.decimals() (#224-226)
decreaseAllowance(address,uint256) should be declared external:
- ERC20.decreaseAllowance(address,uint256) (#328-334)
symbol() should be declared external:
- ERC20.symbol() (#207-209)
increaseAllowance(address,uint256) should be declared external:
- ERC20.increaseAllowance(address,uint256) (#309-312)
getUnlockableTokens(address) should be declared external:
- ERC1132.getUnlockableTokens(address) (#955)
- LockableToken.getUnlockableTokens(address) (#1421-1425)
tokensLockedAtTime(address,bytes32,uint256) should be declared external:
- ERC1132.tokensLockedAtTime(address,bytes32,uint256) (#912-916)
- LockableToken.tokensLockedAtTime(address,bytes32,uint256) (#1328-1334)
name() should be declared external:
- ERC20.name() (#199-201)
grantRole(bytes32,address) should be declared external:
- AccessControl.grantRole(bytes32,address) (#737-739)
revokeRole(bytes32,address) should be declared external:
- AccessControl.revokeRole(bytes32,address) (#750-752)
totalSupply() should be declared external:
- ERC20.totalSupply() (#231-233)
approve(address,uint256) should be declared external:
- ERC20.approve(address,uint256) (#269-272)
renounceRole(bytes32,address) should be declared external:
- AccessControl.renounceRole(bytes32,address) (#768-772)
increaseLockAmount(bytes32,uint256) should be declared external:
- ERC1132.increaseLockAmount(bytes32,uint256) (#936)
- LockableToken.increaseLockAmount(bytes32,uint256) (#1372-1385)
lock(bytes32,uint256,uint256) should be declared external:
- ERC1132.lock(bytes32,uint256,uint256) (#889-893)
- LockableToken.lock(bytes32,uint256,uint256) (#1258-1278)
unlock(address) should be declared external:
- ERC1132.unlock(address) (#949)
- LockableToken.unlock(address) (#1402-1415)
mint(address,uint256) should be declared external:
- BEP20FlyToken.mint(address,uint256) (#1449-1452)
Use the external attribute for functions never called from the contract.
Additional information: link
Telegram account link seems to be invalid
Unable to find Youtube account