Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
GooseCoin._getTValues(uint256) (#625-629) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(2) (#626)
Consider ordering multiplication before division.
Additional information: link
GooseCoin.allowance(address,address).owner (#471) shadows:
- Ownable.owner() (#383-385) (function)
GooseCoin._approve(address,address,uint256).owner (#552) shadows:
- Ownable.owner() (#383-385) (function)
Rename the local variables that shadow another component.
Additional information: link
Address.isContract(address) (#249-258) uses assembly
- INLINE ASM (#256)
Address._functionCallWithValue(address,bytes,uint256,string) (#342-363) uses assembly
- INLINE ASM (#355-358)
Do not use evm assembly.
Additional information: link
GooseCoin.includeAccount(address) (#539-550) has costly operations inside a loop:
- _excluded.pop() (#546)
Use a local variable to hold the loop computation result.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (#342-363) is never used and should be removed
Address.functionCall(address,bytes) (#302-304) is never used and should be removed
Address.functionCall(address,bytes,string) (#312-314) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#327-329) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#337-340) is never used and should be removed
Address.isContract(address) (#249-258) is never used and should be removed
Address.sendValue(address,uint256) (#276-282) is never used and should be removed
Context._msgData() (#11-14) is never used and should be removed
SafeMath.mod(uint256,uint256) (#209-211) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#225-228) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#276-282):
- (success) = recipient.call{value: amount}() (#280)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#342-363):
- (success,returndata) = target.call{value: weiValue}(data) (#346)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Constant GooseCoin._tTotal (#432) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#12)" inContext (#6-15)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable GooseCoin._getValues(uint256).rTransferAmount (#621) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin._transferStandard(address,address,uint256).rTransferAmount (#578) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Variable GooseCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#604) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#604) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#634) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#604) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin.reflectionFromToken(uint256,bool).rTransferAmount (#519) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#634) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#595) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin._transferStandard(address,address,uint256).rTransferAmount (#578) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin.reflectionFromToken(uint256,bool).rTransferAmount (#519) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin.reflectionFromToken(uint256,bool).rTransferAmount (#519) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#595) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._transferStandard(address,address,uint256).rTransferAmount (#578) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin._transferStandard(address,address,uint256).rTransferAmount (#578) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._transferStandard(address,address,uint256).rTransferAmount (#578) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin.reflectionFromToken(uint256,bool).rTransferAmount (#519) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin._getValues(uint256).rTransferAmount (#621) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#595) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin._transferToExcluded(address,address,uint256).rTransferAmount (#586) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._transferStandard(address,address,uint256).rTransferAmount (#578) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin._getValues(uint256).rTransferAmount (#621) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin._getValues(uint256).rTransferAmount (#621) is too similar to GooseCoin._transferToExcluded(address,address,uint256).tTransferAmount (#586)
Variable GooseCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#604) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#634) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#595) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin._transferToExcluded(address,address,uint256).rTransferAmount (#586) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Variable GooseCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#634) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin._getValues(uint256).rTransferAmount (#621) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Variable GooseCoin.reflectionFromToken(uint256,bool).rTransferAmount (#519) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#604) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin._transferToExcluded(address,address,uint256).rTransferAmount (#586) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#634) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Variable GooseCoin.reflectionFromToken(uint256,bool).rTransferAmount (#519) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Variable GooseCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#595) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin._transferBothExcluded(address,address,uint256).rTransferAmount (#604) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Variable GooseCoin._transferToExcluded(address,address,uint256).rTransferAmount (#586) is too similar to GooseCoin._transferFromExcluded(address,address,uint256).tTransferAmount (#595)
Variable GooseCoin._getRValues(uint256,uint256,uint256).rTransferAmount (#634) is too similar to GooseCoin._transferBothExcluded(address,address,uint256).tTransferAmount (#604)
Variable GooseCoin._transferToExcluded(address,address,uint256).rTransferAmount (#586) is too similar to GooseCoin._getTValues(uint256).tTransferAmount (#627)
Variable GooseCoin._getValues(uint256).rTransferAmount (#621) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin._transferToExcluded(address,address,uint256).rTransferAmount (#586) is too similar to GooseCoin._transferStandard(address,address,uint256).tTransferAmount (#578)
Variable GooseCoin._transferFromExcluded(address,address,uint256).rTransferAmount (#595) is too similar to GooseCoin._getValues(uint256).tTransferAmount (#619)
Prevent variables from having similar names.
Additional information: link
GooseCoin.slitherConstructorConstantVariables() (#420-655) uses literals with too many digits:
- _tTotal = 1000000000 * 10 ** 6 (#432)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
GooseCoin._decimals (#438) should be constant
GooseCoin._name (#436) should be constant
GooseCoin._symbol (#437) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
owner() should be declared external:
- Ownable.owner() (#383-385)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#402-405)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#411-415)
name() should be declared external:
- GooseCoin.name() (#445-447)
symbol() should be declared external:
- GooseCoin.symbol() (#449-451)
decimals() should be declared external:
- GooseCoin.decimals() (#453-455)
totalSupply() should be declared external:
- GooseCoin.totalSupply() (#457-459)
balanceOf(address) should be declared external:
- GooseCoin.balanceOf(address) (#461-464)
transfer(address,uint256) should be declared external:
- GooseCoin.transfer(address,uint256) (#466-469)
allowance(address,address) should be declared external:
- GooseCoin.allowance(address,address) (#471-473)
approve(address,uint256) should be declared external:
- GooseCoin.approve(address,uint256) (#475-478)
transferFrom(address,address,uint256) should be declared external:
- GooseCoin.transferFrom(address,address,uint256) (#480-484)
increaseAllowance(address,uint256) should be declared external:
- GooseCoin.increaseAllowance(address,uint256) (#486-489)
decreaseAllowance(address,uint256) should be declared external:
- GooseCoin.decreaseAllowance(address,uint256) (#491-494)
isExcluded(address) should be declared external:
- GooseCoin.isExcluded(address) (#496-498)
totalFees() should be declared external:
- GooseCoin.totalFees() (#500-502)
reflect(uint256) should be declared external:
- GooseCoin.reflect(uint256) (#504-511)
reflectionFromToken(uint256,bool) should be declared external:
- GooseCoin.reflectionFromToken(uint256,bool) (#513-522)
Use the external attribute for functions never called from the contract.
Additional information: link
Unable to find website, listings and other project-related information
Young tokens have high risks of scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Unable to find Telegram and Twitter accounts