A Cyborg Shiba Inu Dog from Planet Shibamoon X1000. A Decentralized Meme Token.
Reentrancy in ShiborgInu._transfer(address,address,uint256) (#791-875):
External calls:
- swapAndLiquify(contractTokenBalance) (#825)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#825)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
State variables written after the call(s):
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _rOwned[address(this)] = _rOwned[address(this)].add(rLiquidity) (#747)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#956)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#965)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#616)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#976)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#957)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#967)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#977)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#618)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _rTotal = _rTotal.sub(rFee) (#702)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _tOwned[address(this)] = _tOwned[address(this)].add(tLiquidity) (#749)
- _tOwned[sender] = _tOwned[sender].sub(tAmount) (#615)
- _tOwned[sender] = _tOwned[sender].sub(tAmount) (#975)
- _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount) (#966)
- _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount) (#617)
Apply the check-effects-interactions pattern.
Additional information: link
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
ShiborgInu._rTotal (#408) is set pre-construction with a non-constant function or state variable:
- (MAX - (MAX % _tTotal))
ShiborgInu._previousTaxFee (#426) is set pre-construction with a non-constant function or state variable:
- _taxFee
ShiborgInu._previousLiquidityFee (#429) is set pre-construction with a non-constant function or state variable:
- _liquidityFee
Remove any initialization of state variables via non-constant state variables or function calls. If variables must be set upon contract deployment, locate initialization in the constructor instead.
Additional information: link
Redundant expression "this (#71)" inContext (#65-74)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Reentrancy in ShiborgInu._transfer(address,address,uint256) (#791-875):
External calls:
- swapAndLiquify(contractTokenBalance) (#825)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#825)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
Event emitted after the call(s):
- Transfer(sender,recipient,tTransferAmount) (#960)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- Transfer(sender,recipient,tTransferAmount) (#980)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- Transfer(sender,recipient,tTransferAmount) (#970)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- Transfer(sender,recipient,tTransferAmount) (#621)
- _tokenTransfer(from,to,amount,takeFee) (#874)
Reentrancy in ShiborgInu.constructor() (#463-504):
External calls:
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#468-469)
Event emitted after the call(s):
- Transfer(address(0),_msgSender(),_tTotal) (#503)
Reentrancy in ShiborgInu.swapAndLiquify(uint256) (#877-898):
External calls:
- swapTokensForEth(half) (#889)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
- addLiquidity(otherHalf,newBalance) (#895)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#895)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#788)
- addLiquidity(otherHalf,newBalance) (#895)
- SwapAndLiquify(half,newBalance,otherHalf) (#897)
Reentrancy in ShiborgInu.transferFrom(address,address,uint256) (#541-545):
External calls:
- _transfer(sender,recipient,amount) (#542)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
External calls sending eth:
- _transfer(sender,recipient,amount) (#542)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#788)
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (#543)
Apply the check-effects-interactions pattern.
Additional information: link
ShiborgInu.includeInReward(address) (#601-612) has costly operations inside a loop:
- _excluded.pop() (#608)
ShiborgInu.removeBotFromBlackList(address) (#653-663) has costly operations inside a loop:
- _blackListedBots.pop() (#659)
Use a local variable to hold the loop computation result.
Additional information: link
ShiborgInu._transfer(address,address,uint256) (#791-875) uses tx.origin for authorization: require(bool,string)(! _isBlackListedBot[tx.origin],You have no power here!) (#801)
Do not use tx.origin for authorization.
Additional information: link
ShiborgInu.addLiquidity(uint256,uint256) (#918-931) ignores return value by uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
Ensure that all the return values of the function calls are used.
Additional information: link
ShiborgInu.allowance(address,address).owner (#532) shadows:
- Ownable.owner() (#145-147) (function)
ShiborgInu._approve(address,address,uint256).owner (#783) shadows:
- Ownable.owner() (#145-147) (function)
Rename the local variables that shadow another component.
Additional information: link
ShiborgInu.setTaxFeePercent(uint256) (#632-634) should emit an event for:
- _taxFee = taxFee (#633)
ShiborgInu.setLiquidityFeePercent(uint256) (#636-638) should emit an event for:
- _liquidityFee = liquidityFee (#637)
ShiborgInu.setMaxTxPercent(uint256) (#640-644) should emit an event for:
- _maxTxAmount = _tTotal.mul(maxTxPercent).div(10 ** 2) (#641-643)
ShiborgInu.setBuyFee(uint256,uint256) (#670-673) should emit an event for:
- _buyTaxFee = buyTaxFee (#671)
- _buyLiquidityFee = buyLiquidityFee (#672)
ShiborgInu.setSellFee(uint256,uint256) (#675-678) should emit an event for:
- _sellTaxFee = sellTaxFee (#676)
- _sellLiquidityFee = sellLiquidityFee (#677)
Emit an event for critical parameter changes.
Additional information: link
Reentrancy in ShiborgInu._transfer(address,address,uint256) (#791-875):
External calls:
- swapAndLiquify(contractTokenBalance) (#825)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#825)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
State variables written after the call(s):
- removeAllFee() (#837)
- _liquidityFee = 0 (#771)
- _liquidityFee = _buyLiquidityFee (#839)
- removeAllFee() (#843)
- _liquidityFee = 0 (#771)
- _liquidityFee = _sellLiquidityFee (#845)
- removeAllFee() (#850)
- _liquidityFee = 0 (#771)
- _liquidityFee = _addressFees[from]._liquidityFee (#852)
- _liquidityFee = _addressFees[from]._sellLiquidityFee (#857)
- removeAllFee() (#864)
- _liquidityFee = 0 (#771)
- _liquidityFee = _addressFees[to]._buyLiquidityFee (#867)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _liquidityFee = _previousLiquidityFee (#776)
- _liquidityFee = 0 (#771)
- removeAllFee() (#837)
- _previousLiquidityFee = _liquidityFee (#768)
- removeAllFee() (#843)
- _previousLiquidityFee = _liquidityFee (#768)
- removeAllFee() (#850)
- _previousLiquidityFee = _liquidityFee (#768)
- removeAllFee() (#864)
- _previousLiquidityFee = _liquidityFee (#768)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _previousLiquidityFee = _liquidityFee (#768)
- removeAllFee() (#837)
- _previousTaxFee = _taxFee (#767)
- removeAllFee() (#843)
- _previousTaxFee = _taxFee (#767)
- removeAllFee() (#850)
- _previousTaxFee = _taxFee (#767)
- removeAllFee() (#864)
- _previousTaxFee = _taxFee (#767)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _previousTaxFee = _taxFee (#767)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _tFeeTotal = _tFeeTotal.add(tFee) (#703)
- removeAllFee() (#837)
- _taxFee = 0 (#770)
- _taxFee = _buyTaxFee (#838)
- removeAllFee() (#843)
- _taxFee = 0 (#770)
- _taxFee = _sellTaxFee (#844)
- removeAllFee() (#850)
- _taxFee = 0 (#770)
- _taxFee = _addressFees[from]._taxFee (#851)
- _taxFee = _addressFees[from]._sellTaxFee (#856)
- removeAllFee() (#864)
- _taxFee = 0 (#770)
- _taxFee = _addressFees[to]._buyTaxFee (#866)
- _tokenTransfer(from,to,amount,takeFee) (#874)
- _taxFee = _previousTaxFee (#775)
- _taxFee = 0 (#770)
Reentrancy in ShiborgInu.constructor() (#463-504):
External calls:
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#468-469)
State variables written after the call(s):
- _blackListedBots.push(address(0xE031b36b53E53a292a20c5F08fd1658CDdf74fce)) (#480)
- _blackListedBots.push(address(0xe516bDeE55b0b4e9bAcaF6285130De15589B1345)) (#483)
- _blackListedBots.push(address(0xa1ceC245c456dD1bd9F2815a6955fEf44Eb4191b)) (#486)
- _blackListedBots.push(address(0xd7d3EE77D35D0a56F91542D4905b1a2b1CD7cF95)) (#489)
- _blackListedBots.push(address(0xFe76f05dc59fEC04184fA0245AD0C3CF9a57b964)) (#492)
- _blackListedBots.push(address(0xDC81a3450817A58D00f45C86d0368290088db848)) (#495)
- _blackListedBots.push(address(0x45fD07C63e5c316540F14b2002B085aEE78E3881)) (#498)
- _blackListedBots.push(address(0x27F9Adb26D532a41D97e00206114e429ad58c679)) (#501)
- _isBlackListedBot[address(0xE031b36b53E53a292a20c5F08fd1658CDdf74fce)] = true (#479)
- _isBlackListedBot[address(0xe516bDeE55b0b4e9bAcaF6285130De15589B1345)] = true (#482)
- _isBlackListedBot[address(0xa1ceC245c456dD1bd9F2815a6955fEf44Eb4191b)] = true (#485)
- _isBlackListedBot[address(0xd7d3EE77D35D0a56F91542D4905b1a2b1CD7cF95)] = true (#488)
- _isBlackListedBot[address(0xFe76f05dc59fEC04184fA0245AD0C3CF9a57b964)] = true (#491)
- _isBlackListedBot[address(0xDC81a3450817A58D00f45C86d0368290088db848)] = true (#494)
- _isBlackListedBot[address(0x45fD07C63e5c316540F14b2002B085aEE78E3881)] = true (#497)
- _isBlackListedBot[address(0x27F9Adb26D532a41D97e00206114e429ad58c679)] = true (#500)
- _isExcludedFromFee[owner()] = true (#475)
- _isExcludedFromFee[address(this)] = true (#476)
- uniswapV2Router = _uniswapV2Router (#472)
Reentrancy in ShiborgInu.swapAndLiquify(uint256) (#877-898):
External calls:
- swapTokensForEth(half) (#889)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
- addLiquidity(otherHalf,newBalance) (#895)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#895)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
State variables written after the call(s):
- addLiquidity(otherHalf,newBalance) (#895)
- _allowances[owner][spender] = amount (#787)
Reentrancy in ShiborgInu.transferFrom(address,address,uint256) (#541-545):
External calls:
- _transfer(sender,recipient,amount) (#542)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#909-915)
External calls sending eth:
- _transfer(sender,recipient,amount) (#542)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#923-930)
State variables written after the call(s):
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (#543)
- _allowances[owner][spender] = amount (#787)
Apply the check-effects-interactions pattern.
Additional information: link
Ownable.unlock() (#176-181) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(now > _lockTime,Contract is locked until 7 days) (#178)
Avoid relying on block.timestamp.
Additional information: link
Address.isContract(address) (#77-86) uses assembly
- INLINE ASM (#84)
Address._functionCallWithValue(address,bytes,uint256,string) (#112-129) uses assembly
- INLINE ASM (#121-124)
Do not use evm assembly.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (#112-129) is never used and should be removed
Address.functionCall(address,bytes) (#95-97) is never used and should be removed
Address.functionCall(address,bytes,string) (#99-101) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#103-105) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#107-110) is never used and should be removed
Address.isContract(address) (#77-86) is never used and should be removed
Address.sendValue(address,uint256) (#87-93) is never used and should be removed
Context._msgData() (#70-73) is never used and should be removed
SafeMath.mod(uint256,uint256) (#55-57) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#59-62) is never used and should be removed
Remove unused functions.
Additional information: link
Low level call in Address.sendValue(address,uint256) (#87-93):
- (success) = recipient.call{value: amount}() (#91)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#112-129):
- (success,returndata) = target.call{value: weiValue}(data) (#115)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Function IUniswapV2Pair.DOMAIN_SEPARATOR() (#218) is not in mixedCase
Function IUniswapV2Pair.PERMIT_TYPEHASH() (#219) is not in mixedCase
Function IUniswapV2Pair.MINIMUM_LIQUIDITY() (#236) is not in mixedCase
Function IUniswapV2Router01.WETH() (#256) is not in mixedCase
Parameter ShiborgInu.setSwapAndLiquifyEnabled(bool)._enabled (#665) is not in mixedCase
Parameter ShiborgInu.setAddressFee(address,bool,uint256,uint256)._address (#680) is not in mixedCase
Parameter ShiborgInu.setAddressFee(address,bool,uint256,uint256)._enable (#680) is not in mixedCase
Parameter ShiborgInu.setAddressFee(address,bool,uint256,uint256)._addressTaxFee (#680) is not in mixedCase
Parameter ShiborgInu.setAddressFee(address,bool,uint256,uint256)._addressLiquidityFee (#680) is not in mixedCase
Parameter ShiborgInu.setBuyAddressFee(address,bool,uint256,uint256)._address (#686) is not in mixedCase
Parameter ShiborgInu.setBuyAddressFee(address,bool,uint256,uint256)._enable (#686) is not in mixedCase
Parameter ShiborgInu.setBuyAddressFee(address,bool,uint256,uint256)._addressTaxFee (#686) is not in mixedCase
Parameter ShiborgInu.setBuyAddressFee(address,bool,uint256,uint256)._addressLiquidityFee (#686) is not in mixedCase
Parameter ShiborgInu.setSellAddressFee(address,bool,uint256,uint256)._address (#692) is not in mixedCase
Parameter ShiborgInu.setSellAddressFee(address,bool,uint256,uint256)._enable (#692) is not in mixedCase
Parameter ShiborgInu.setSellAddressFee(address,bool,uint256,uint256)._addressTaxFee (#692) is not in mixedCase
Parameter ShiborgInu.setSellAddressFee(address,bool,uint256,uint256)._addressLiquidityFee (#692) is not in mixedCase
Parameter ShiborgInu.calculateTaxFee(uint256)._amount (#752) is not in mixedCase
Parameter ShiborgInu.calculateLiquidityFee(uint256)._amount (#758) is not in mixedCase
Variable ShiborgInu._taxFee (#425) is not in mixedCase
Variable ShiborgInu._liquidityFee (#428) is not in mixedCase
Variable ShiborgInu._buyTaxFee (#431) is not in mixedCase
Variable ShiborgInu._buyLiquidityFee (#432) is not in mixedCase
Variable ShiborgInu._sellTaxFee (#434) is not in mixedCase
Variable ShiborgInu._sellLiquidityFee (#435) is not in mixedCase
Variable ShiborgInu._addressFees (#444) is not in mixedCase
Variable ShiborgInu._maxTxAmount (#446) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Variable IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#261) is too similar to IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#262)
Variable ShiborgInu._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#723) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu._transferFromExcluded(address,address,uint256).rTransferAmount (#974) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu._transferToExcluded(address,address,uint256).rTransferAmount (#964) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu.reflectionFromToken(uint256,bool).rTransferAmount (#580) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu._getValues(uint256).rTransferAmount (#708) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu._getValues(uint256).rTransferAmount (#708) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu._getValues(uint256).rTransferAmount (#708) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._transferFromExcluded(address,address,uint256).rTransferAmount (#974) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#723) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu._getValues(uint256).rTransferAmount (#708) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu._transferToExcluded(address,address,uint256).rTransferAmount (#964) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu.reflectionFromToken(uint256,bool).rTransferAmount (#580) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#723) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#723) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu.reflectionFromToken(uint256,bool).rTransferAmount (#580) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu._transferFromExcluded(address,address,uint256).rTransferAmount (#974) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._transferFromExcluded(address,address,uint256).rTransferAmount (#974) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Variable ShiborgInu._transferToExcluded(address,address,uint256).rTransferAmount (#964) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#723) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu.reflectionFromToken(uint256,bool).rTransferAmount (#580) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._transferStandard(address,address,uint256).rTransferAmount (#955) is too similar to ShiborgInu._transferToExcluded(address,address,uint256).tTransferAmount (#964)
Variable ShiborgInu._transferToExcluded(address,address,uint256).rTransferAmount (#964) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._transferStandard(address,address,uint256).rTransferAmount (#955) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu._getValues(uint256).rTransferAmount (#708) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._transferStandard(address,address,uint256).rTransferAmount (#955) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu._transferToExcluded(address,address,uint256).rTransferAmount (#964) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._transferToExcluded(address,address,uint256).rTransferAmount (#964) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Variable ShiborgInu._transferFromExcluded(address,address,uint256).rTransferAmount (#974) is too similar to ShiborgInu._transferStandard(address,address,uint256).tTransferAmount (#955)
Variable ShiborgInu._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#723) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Variable ShiborgInu.reflectionFromToken(uint256,bool).rTransferAmount (#580) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu.reflectionFromToken(uint256,bool).rTransferAmount (#580) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Variable ShiborgInu._transferStandard(address,address,uint256).rTransferAmount (#955) is too similar to ShiborgInu._transferFromExcluded(address,address,uint256).tTransferAmount (#974)
Variable ShiborgInu._transferFromExcluded(address,address,uint256).rTransferAmount (#974) is too similar to ShiborgInu._transferBothExcluded(address,address,uint256).tTransferAmount (#614)
Variable ShiborgInu._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._transferStandard(address,address,uint256).rTransferAmount (#955) is too similar to ShiborgInu._getTValues(uint256).tTransferAmount (#715)
Variable ShiborgInu._transferBothExcluded(address,address,uint256).rTransferAmount (#614) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Variable ShiborgInu._transferStandard(address,address,uint256).rTransferAmount (#955) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Variable ShiborgInu._getValues(uint256).rTransferAmount (#708) is too similar to ShiborgInu._getValues(uint256).tTransferAmount (#707)
Prevent variables from having similar names.
Additional information: link
ShiborgInu.slitherConstructorVariables() (#391-987) uses literals with too many digits:
- _tTotal = 1000000000 * 10 ** 6 * 10 ** 8 (#407)
ShiborgInu.slitherConstructorVariables() (#391-987) uses literals with too many digits:
- _maxTxAmount = 1000000000 * 10 ** 6 * 10 ** 8 (#446)
ShiborgInu.slitherConstructorVariables() (#391-987) uses literals with too many digits:
- numTokensSellToAddToLiquidity = 500000 * 10 ** 6 * 10 ** 8 (#447)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
ShiborgInu._decimals (#413) should be constant
ShiborgInu._name (#411) should be constant
ShiborgInu._symbol (#412) should be constant
ShiborgInu._tTotal (#407) should be constant
ShiborgInu.numTokensSellToAddToLiquidity (#447) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#154-157)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#159-163)
geUnlockTime() should be declared external:
- Ownable.geUnlockTime() (#165-167)
lock(uint256) should be declared external:
- Ownable.lock(uint256) (#169-174)
unlock() should be declared external:
- Ownable.unlock() (#176-181)
name() should be declared external:
- ShiborgInu.name() (#506-508)
symbol() should be declared external:
- ShiborgInu.symbol() (#510-512)
decimals() should be declared external:
- ShiborgInu.decimals() (#514-516)
totalSupply() should be declared external:
- ShiborgInu.totalSupply() (#518-520)
transfer(address,uint256) should be declared external:
- ShiborgInu.transfer(address,uint256) (#527-530)
allowance(address,address) should be declared external:
- ShiborgInu.allowance(address,address) (#532-534)
approve(address,uint256) should be declared external:
- ShiborgInu.approve(address,uint256) (#536-539)
transferFrom(address,address,uint256) should be declared external:
- ShiborgInu.transferFrom(address,address,uint256) (#541-545)
increaseAllowance(address,uint256) should be declared external:
- ShiborgInu.increaseAllowance(address,uint256) (#547-550)
decreaseAllowance(address,uint256) should be declared external:
- ShiborgInu.decreaseAllowance(address,uint256) (#552-555)
isExcludedFromReward(address) should be declared external:
- ShiborgInu.isExcludedFromReward(address) (#557-559)
totalFees() should be declared external:
- ShiborgInu.totalFees() (#561-563)
deliver(uint256) should be declared external:
- ShiborgInu.deliver(uint256) (#565-572)
reflectionFromToken(uint256,bool) should be declared external:
- ShiborgInu.reflectionFromToken(uint256,bool) (#574-583)
excludeFromReward(address) should be declared external:
- ShiborgInu.excludeFromReward(address) (#591-599)
excludeFromFee(address) should be declared external:
- ShiborgInu.excludeFromFee(address) (#624-626)
includeInFee(address) should be declared external:
- ShiborgInu.includeInFee(address) (#628-630)
setSwapAndLiquifyEnabled(bool) should be declared external:
- ShiborgInu.setSwapAndLiquifyEnabled(bool) (#665-668)
isExcludedFromFee(address) should be declared external:
- ShiborgInu.isExcludedFromFee(address) (#779-781)
Use the external attribute for functions never called from the contract.
Additional information: link
Young tokens have high risks of price dump / death
Young tokens have high risks of scam / price dump / death
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