AVA token aims to be recognized as a platform with unbelievable potential and benefits for investors. We strive to serve our community through Real world real Estate, NFT, Booken app, AVA Bank, Meta-verse and most importantly amazing returns on investment
AntiBotLiquidityGeneratorToken.addLiquidity(uint256,uint256) (#1568-1581) sends eth to arbitrary user
Dangerous calls:
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
Ensure that an arbitrary user cannot withdraw unauthorized funds.
Additional information: link
Reentrancy in AntiBotLiquidityGeneratorToken._transfer(address,address,uint256) (#1483-1525):
External calls:
- pinkAntiBot.onPreTransferCheck(from,to,amount) (#1493)
- swapAndLiquify(contractTokenBalance) (#1512)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#1512)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
State variables written after the call(s):
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _rOwned[address(this)] = _rOwned[address(this)].add(rLiquidity) (#1410)
- _rOwned[_charityAddress] = _rOwned[_charityAddress].add(rCharity) (#1419)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1621)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1643)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1622)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1667)
- _rOwned[sender] = _rOwned[sender].sub(rAmount) (#1257)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1645)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1668)
- _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount) (#1259)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _rTotal = _rTotal.sub(rFee) (#1302)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _tOwned[address(this)] = _tOwned[address(this)].add(tLiquidity) (#1412)
- _tOwned[_charityAddress] = _tOwned[_charityAddress].add(tCharity) (#1421-1423)
- _tOwned[sender] = _tOwned[sender].sub(tAmount) (#1256)
- _tOwned[sender] = _tOwned[sender].sub(tAmount) (#1666)
- _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount) (#1644)
- _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount) (#1258)
Apply the check-effects-interactions pattern.
Additional information: link
Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256) (#995-1071) contains a tautology or contradiction:
- require(bool,string)(charityFeeBps_ >= 0,Invalid charity fee) (#1010)
AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256) (#995-1071) contains a tautology or contradiction:
- require(bool,string)(liquidityFeeBps_ >= 0,Invalid liquidity fee) (#1009)
AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256) (#995-1071) contains a tautology or contradiction:
- require(bool,string)(taxFeeBps_ >= 0,Invalid tax fee) (#1008)
Fix the incorrect comparison by changing the value type or the comparison.
Additional information: link
Combination 1: Reentrancy vulnerabilities + Functions that send Ether to arbitraty destination. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Contract ownership is not renounced (belongs to a wallet)
Low level call in Address.sendValue(address,uint256) (#473-478):
- (success) = recipient.call{value: amount}() (#476)
Low level call in Address.functionCallWithValue(address,bytes,uint256,string) (#541-552):
- (success,returndata) = target.call{value: value}(data) (#550)
Low level call in Address.functionStaticCall(address,bytes,string) (#570-579):
- (success,returndata) = target.staticcall(data) (#577)
Low level call in Address.functionDelegateCall(address,bytes,string) (#597-606):
- (success,returndata) = target.delegatecall(data) (#604)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
AntiBotLiquidityGeneratorToken.addLiquidity(uint256,uint256) (#1568-1581) ignores return value by uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
Ensure that all the return values of the function calls are used.
Additional information: link
AntiBotLiquidityGeneratorToken.allowance(address,address).owner (#1107) shadows:
- Ownable.owner() (#150-152) (function)
AntiBotLiquidityGeneratorToken._approve(address,address,uint256).owner (#1472) shadows:
- Ownable.owner() (#150-152) (function)
Rename the local variables that shadow another component.
Additional information: link
AntiBotLiquidityGeneratorToken.setTaxFeePercent(uint256) (#1274-1280) should emit an event for:
- _taxFee = taxFeeBps (#1275)
AntiBotLiquidityGeneratorToken.setLiquidityFeePercent(uint256) (#1282-1291) should emit an event for:
- _liquidityFee = liquidityFeeBps (#1286)
Emit an event for critical parameter changes.
Additional information: link
AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256).serviceFeeReceiver_ (#1005) lacks a zero-check on :
- address(serviceFeeReceiver_).transfer(serviceFee_) (#1070)
Check that the address is not zero.
Additional information: link
Reentrancy in AntiBotLiquidityGeneratorToken._transfer(address,address,uint256) (#1483-1525):
External calls:
- pinkAntiBot.onPreTransferCheck(from,to,amount) (#1493)
- swapAndLiquify(contractTokenBalance) (#1512)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#1512)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
State variables written after the call(s):
- swapAndLiquify(contractTokenBalance) (#1512)
- _allowances[owner][spender] = amount (#1479)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _charityFee = _previousCharityFee (#1464)
- _charityFee = 0 (#1458)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _liquidityFee = _previousLiquidityFee (#1463)
- _liquidityFee = 0 (#1457)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _previousCharityFee = _charityFee (#1454)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _previousLiquidityFee = _liquidityFee (#1453)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _previousTaxFee = _taxFee (#1452)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _tFeeTotal = _tFeeTotal.add(tFee) (#1303)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- _taxFee = _previousTaxFee (#1462)
- _taxFee = 0 (#1456)
Reentrancy in AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256) (#995-1071):
External calls:
- pinkAntiBot.setTokenOwner(owner()) (#1023)
State variables written after the call(s):
- _charityAddress = charityAddress_ (#1039)
- _charityFee = charityFeeBps_ (#1040)
- _decimals = 9 (#1028)
- _liquidityFee = liquidityFeeBps_ (#1036)
- _name = name_ (#1026)
- _previousCharityFee = _charityFee (#1041)
- _previousLiquidityFee = _liquidityFee (#1037)
- _previousTaxFee = _taxFee (#1034)
- _rOwned[owner()] = _rTotal (#1047)
- _rTotal = (MAX - (MAX % _tTotal)) (#1031)
- _symbol = symbol_ (#1027)
- _tTotal = totalSupply_ (#1030)
- _taxFee = taxFeeBps_ (#1033)
- enableAntiBot = true (#1024)
- numTokensSellToAddToLiquidity = totalSupply_.mul(5).div(10 ** 4) (#1043)
- swapAndLiquifyEnabled = true (#1045)
Reentrancy in AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256) (#995-1071):
External calls:
- pinkAntiBot.setTokenOwner(owner()) (#1023)
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#1051-1052)
State variables written after the call(s):
- _isExcludedFromFee[owner()] = true (#1058)
- _isExcludedFromFee[address(this)] = true (#1059)
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#1051-1052)
- uniswapV2Router = _uniswapV2Router (#1055)
Reentrancy in AntiBotLiquidityGeneratorToken.swapAndLiquify(uint256) (#1527-1548):
External calls:
- swapTokensForEth(half) (#1539)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
- addLiquidity(otherHalf,newBalance) (#1545)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#1545)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
State variables written after the call(s):
- addLiquidity(otherHalf,newBalance) (#1545)
- _allowances[owner][spender] = amount (#1479)
Reentrancy in AntiBotLiquidityGeneratorToken.transferFrom(address,address,uint256) (#1125-1140):
External calls:
- _transfer(sender,recipient,amount) (#1130)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
- pinkAntiBot.onPreTransferCheck(from,to,amount) (#1493)
External calls sending eth:
- _transfer(sender,recipient,amount) (#1130)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
State variables written after the call(s):
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (#1131-1138)
- _allowances[owner][spender] = amount (#1479)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in AntiBotLiquidityGeneratorToken._transfer(address,address,uint256) (#1483-1525):
External calls:
- pinkAntiBot.onPreTransferCheck(from,to,amount) (#1493)
- swapAndLiquify(contractTokenBalance) (#1512)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (#1512)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1480)
- swapAndLiquify(contractTokenBalance) (#1512)
- SwapAndLiquify(half,newBalance,otherHalf) (#1547)
- swapAndLiquify(contractTokenBalance) (#1512)
- Transfer(_msgSender(),_charityAddress,tCharity) (#1424)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- Transfer(sender,recipient,tTransferAmount) (#1626)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- Transfer(sender,recipient,tTransferAmount) (#1672)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- Transfer(sender,recipient,tTransferAmount) (#1649)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
- Transfer(sender,recipient,tTransferAmount) (#1263)
- _tokenTransfer(from,to,amount,takeFee) (#1524)
Reentrancy in AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256) (#995-1071):
External calls:
- pinkAntiBot.setTokenOwner(owner()) (#1023)
- uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this),_uniswapV2Router.WETH()) (#1051-1052)
Event emitted after the call(s):
- TokenCreated(owner(),address(this),TokenType.antiBotLiquidityGenerator,VERSION) (#1063-1068)
- Transfer(address(0),owner(),_tTotal) (#1061)
Reentrancy in AntiBotLiquidityGeneratorToken.swapAndLiquify(uint256) (#1527-1548):
External calls:
- swapTokensForEth(half) (#1539)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
- addLiquidity(otherHalf,newBalance) (#1545)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#1545)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1480)
- addLiquidity(otherHalf,newBalance) (#1545)
- SwapAndLiquify(half,newBalance,otherHalf) (#1547)
Reentrancy in AntiBotLiquidityGeneratorToken.transferFrom(address,address,uint256) (#1125-1140):
External calls:
- _transfer(sender,recipient,amount) (#1130)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
- uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1559-1565)
- pinkAntiBot.onPreTransferCheck(from,to,amount) (#1493)
External calls sending eth:
- _transfer(sender,recipient,amount) (#1130)
- uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (#1573-1580)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#1480)
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (#1131-1138)
Apply the check-effects-interactions pattern.
Additional information: link
Address.isContract(address) (#445-455) uses assembly
- INLINE ASM (#451-453)
Address.verifyCallResult(bool,bytes,string) (#614-634) uses assembly
- INLINE ASM (#626-629)
Do not use evm assembly.
Additional information: link
AntiBotLiquidityGeneratorToken.includeInReward(address) (#1229-1240) has costly operations inside a loop:
- _excluded.pop() (#1236)
Use a local variable to hold the loop computation result.
Additional information: link
Address.functionCall(address,bytes) (#498-500) is never used and should be removed
Address.functionCall(address,bytes,string) (#508-514) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#527-533) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#541-552) is never used and should be removed
Address.functionDelegateCall(address,bytes) (#587-589) is never used and should be removed
Address.functionDelegateCall(address,bytes,string) (#597-606) is never used and should be removed
Address.functionStaticCall(address,bytes) (#560-562) is never used and should be removed
Address.functionStaticCall(address,bytes,string) (#570-579) is never used and should be removed
Address.isContract(address) (#445-455) is never used and should be removed
Address.sendValue(address,uint256) (#473-478) is never used and should be removed
Address.verifyCallResult(bool,bytes,string) (#614-634) is never used and should be removed
Context._msgData() (#110-112) is never used and should be removed
SafeMath.div(uint256,uint256,string) (#380-389) is never used and should be removed
SafeMath.mod(uint256,uint256) (#340-342) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#406-415) is never used and should be removed
SafeMath.tryAdd(uint256,uint256) (#211-217) is never used and should be removed
SafeMath.tryDiv(uint256,uint256) (#253-258) is never used and should be removed
SafeMath.tryMod(uint256,uint256) (#265-270) is never used and should be removed
SafeMath.tryMul(uint256,uint256) (#236-246) is never used and should be removed
SafeMath.trySub(uint256,uint256) (#224-229) is never used and should be removed
Remove unused functions.
Additional information: link
AntiBotLiquidityGeneratorToken._previousTaxFee (#961) is set pre-construction with a non-constant function or state variable:
- _taxFee
AntiBotLiquidityGeneratorToken._previousLiquidityFee (#964) is set pre-construction with a non-constant function or state variable:
- _liquidityFee
AntiBotLiquidityGeneratorToken._previousCharityFee (#967) is set pre-construction with a non-constant function or state variable:
- _charityFee
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
Function IUniswapV2Router01.WETH() (#645) is not in mixedCase
Parameter AntiBotLiquidityGeneratorToken.setEnableAntiBot(bool)._enable (#1073) is not in mixedCase
Parameter AntiBotLiquidityGeneratorToken.setSwapAndLiquifyEnabled(bool)._enabled (#1293) is not in mixedCase
Parameter AntiBotLiquidityGeneratorToken.calculateTaxFee(uint256)._amount (#1428) is not in mixedCase
Parameter AntiBotLiquidityGeneratorToken.calculateLiquidityFee(uint256)._amount (#1432) is not in mixedCase
Parameter AntiBotLiquidityGeneratorToken.calculateCharityFee(uint256)._amount (#1440) is not in mixedCase
Variable AntiBotLiquidityGeneratorToken._taxFee (#960) is not in mixedCase
Variable AntiBotLiquidityGeneratorToken._liquidityFee (#963) is not in mixedCase
Variable AntiBotLiquidityGeneratorToken._charityFee (#966) is not in mixedCase
Variable AntiBotLiquidityGeneratorToken._charityAddress (#971) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Variable IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#650) is too similar to IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#651)
Variable AntiBotLiquidityGeneratorToken._charityAddress (#971) is too similar to AntiBotLiquidityGeneratorToken.constructor(string,string,uint256,address,address,uint16,uint16,uint16,address,address,uint256).charityAddress_ (#1000)
Variable AntiBotLiquidityGeneratorToken._charityFee (#966) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tCharityFee (#1355)
Variable AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).rTransferAmount (#1636) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool).rTransferAmount (#1201) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).rTransferAmount (#1614) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1381-1383) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool).rTransferAmount (#1201) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Variable AntiBotLiquidityGeneratorToken._getValues(uint256).rTransferAmount (#1325) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Variable AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool).rTransferAmount (#1201) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken._getValues(uint256).rTransferAmount (#1325) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1381-1383) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken._getValues(uint256).rTransferAmount (#1325) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).rTransferAmount (#1249) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool).rTransferAmount (#1201) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken._getValues(uint256).rTransferAmount (#1325) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool).rTransferAmount (#1201) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).rTransferAmount (#1249) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).rTransferAmount (#1659) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).rTransferAmount (#1249) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Variable AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool).rTransferAmount (#1201) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).rTransferAmount (#1636) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Variable AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).rTransferAmount (#1249) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).rTransferAmount (#1636) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).rTransferAmount (#1659) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).rTransferAmount (#1614) is too similar to AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).tTransferAmount (#1616)
Variable AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).rTransferAmount (#1249) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).rTransferAmount (#1249) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).rTransferAmount (#1636) is too similar to AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).tTransferAmount (#1661)
Variable AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).rTransferAmount (#1636) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1381-1383) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).rTransferAmount (#1614) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).rTransferAmount (#1659) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Variable AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).rTransferAmount (#1614) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1381-1383) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).rTransferAmount (#1636) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1381-1383) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).rTransferAmount (#1659) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).rTransferAmount (#1659) is too similar to AntiBotLiquidityGeneratorToken._getTValues(uint256).tTransferAmount (#1356-1358)
Variable AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).rTransferAmount (#1614) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._getRValues(uint256,uint256,uint256,uint256,uint256).rTransferAmount (#1381-1383) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Variable AntiBotLiquidityGeneratorToken._transferFromExcluded(address,address,uint256).rTransferAmount (#1659) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._getValues(uint256).rTransferAmount (#1325) is too similar to AntiBotLiquidityGeneratorToken._transferBothExcluded(address,address,uint256).tTransferAmount (#1251)
Variable AntiBotLiquidityGeneratorToken._getValues(uint256).rTransferAmount (#1325) is too similar to AntiBotLiquidityGeneratorToken._getValues(uint256).tTransferAmount (#1320)
Variable AntiBotLiquidityGeneratorToken._transferStandard(address,address,uint256).rTransferAmount (#1614) is too similar to AntiBotLiquidityGeneratorToken._transferToExcluded(address,address,uint256).tTransferAmount (#1638)
Prevent variables from having similar names.
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#169-171)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#177-180)
name() should be declared external:
- AntiBotLiquidityGeneratorToken.name() (#1077-1079)
symbol() should be declared external:
- AntiBotLiquidityGeneratorToken.symbol() (#1081-1083)
decimals() should be declared external:
- AntiBotLiquidityGeneratorToken.decimals() (#1085-1087)
totalSupply() should be declared external:
- AntiBotLiquidityGeneratorToken.totalSupply() (#1089-1091)
transfer(address,uint256) should be declared external:
- AntiBotLiquidityGeneratorToken.transfer(address,uint256) (#1098-1105)
allowance(address,address) should be declared external:
- AntiBotLiquidityGeneratorToken.allowance(address,address) (#1107-1114)
approve(address,uint256) should be declared external:
- AntiBotLiquidityGeneratorToken.approve(address,uint256) (#1116-1123)
transferFrom(address,address,uint256) should be declared external:
- AntiBotLiquidityGeneratorToken.transferFrom(address,address,uint256) (#1125-1140)
increaseAllowance(address,uint256) should be declared external:
- AntiBotLiquidityGeneratorToken.increaseAllowance(address,uint256) (#1142-1153)
decreaseAllowance(address,uint256) should be declared external:
- AntiBotLiquidityGeneratorToken.decreaseAllowance(address,uint256) (#1155-1169)
isExcludedFromReward(address) should be declared external:
- AntiBotLiquidityGeneratorToken.isExcludedFromReward(address) (#1171-1173)
totalFees() should be declared external:
- AntiBotLiquidityGeneratorToken.totalFees() (#1175-1177)
deliver(uint256) should be declared external:
- AntiBotLiquidityGeneratorToken.deliver(uint256) (#1179-1189)
reflectionFromToken(uint256,bool) should be declared external:
- AntiBotLiquidityGeneratorToken.reflectionFromToken(uint256,bool) (#1191-1204)
excludeFromReward(address) should be declared external:
- AntiBotLiquidityGeneratorToken.excludeFromReward(address) (#1219-1227)
excludeFromFee(address) should be declared external:
- AntiBotLiquidityGeneratorToken.excludeFromFee(address) (#1266-1268)
includeInFee(address) should be declared external:
- AntiBotLiquidityGeneratorToken.includeInFee(address) (#1270-1272)
setSwapAndLiquifyEnabled(bool) should be declared external:
- AntiBotLiquidityGeneratorToken.setSwapAndLiquifyEnabled(bool) (#1293-1296)
isExcludedFromFee(address) should be declared external:
- AntiBotLiquidityGeneratorToken.isExcludedFromFee(address) (#1467-1469)
Use the external attribute for functions never called from the contract.
Additional information: link
BscScan page for the token does not contain additional info: website, socials, description, etc.
Additional information: link
Unable to find token contract audit
Unable to find KYC or doxxing proof
Unable to find audit link on the website
Unable to find token on CoinGecko
Additional information: link
Unable to find token on CoinMarketCap
Additional information: link
Token is not listed at Mobula.Finance
Additional information: link
Unable to find token on CoinHunt
Additional information: link
Unable to find code repository for the project
Young tokens have high risks of scam / price dump / death
Young tokens have high risks of scam / price dump / death
Young tokens have high risks of scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Twitter account has relatively few followers
Unable to find Blog account (Reddit or Medium)
Unable to find Youtube account
Unable to find Discord account
Twitter account has few posts