Luck-To-Earn Taking all this information into consideration, Luck-to-earn has developed a betting system inside a blockchain, where we will bring our investors transparency and good financial returns. All thanks to the immutable technology and simple features for open auditing of the blockchain.Luck-to-earn's main features:
A decentralized lottery in blockchain for investors with anti-fraud, designed for high stability and global reach.
Reentrancy in Luck2Earn._transfer(address,address,uint256) (luck.sol#248-280):
External calls:
- swapAndLiquify(contractTokenBalance) (luck.sol#267)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (luck.sol#267)
- recipient.transfer(amount) (luck.sol#232)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
State variables written after the call(s):
- _balances[sender] = _balances[sender].sub(amount,Insufficient Balance) (luck.sol#270)
- _balances[recipient] = _balances[recipient].add(finalAmount) (luck.sol#275)
- finalAmount = takeFee(sender,recipient,amount) (luck.sol#272-273)
- _balances[address(this)] = _balances[address(this)].add(feeAmount) (luck.sol#371)
Apply the check-effects-interactions pattern.
Additional information: link
Contract ownership is not renounced (belongs to a wallet)
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
Luck2Earn.addLiquidity(uint256,uint256) (luck.sol#344-357) ignores return value by idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
Ensure that all the return values of the function calls are used.
Additional information: link
Luck2Earn.allowance(address,address).owner (luck.sol#131) shadows:
- Ownable.owner() (Utils.sol#146-148) (function)
Luck2Earn._approve(address,address,uint256).owner (luck.sol#154) shadows:
- Ownable.owner() (Utils.sol#146-148) (function)
Rename the local variables that shadow another component.
Additional information: link
Reentrancy in Luck2Earn._transfer(address,address,uint256) (luck.sol#248-280):
External calls:
- swapAndLiquify(contractTokenBalance) (luck.sol#267)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (luck.sol#267)
- recipient.transfer(amount) (luck.sol#232)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
Event emitted after the call(s):
- Transfer(sender,address(this),feeAmount) (luck.sol#372)
- finalAmount = takeFee(sender,recipient,amount) (luck.sol#272-273)
- Transfer(sender,recipient,finalAmount) (luck.sol#277)
Reentrancy in Luck2Earn.constructor() (luck.sol#90-109):
External calls:
- idexPair = IDEXFactory(_idexV2Router.factory()).createPair(address(this),_idexV2Router.WETH()) (luck.sol#92-93)
Event emitted after the call(s):
- Transfer(address(0),_msgSender(),_totalSupply) (luck.sol#108)
Reentrancy in Luck2Earn.swapAndLiquify(uint256) (luck.sol#289-322):
External calls:
- swapTokensForEth(tokensForSwap) (luck.sol#297)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
Event emitted after the call(s):
- Transfer(sender,recipient,amount) (luck.sol#285)
- _basicTransfer(address(this),nftWalletAddress,tokensForNft) (luck.sol#315)
- Transfer(sender,recipient,amount) (luck.sol#285)
- _basicTransfer(address(this),appWalletAddress,tokensForApp) (luck.sol#312)
- eventSwapAndLiquify(amountReceived) (luck.sol#300)
- liquidityGetBnb(amountBNBLiquidity) (luck.sol#307)
- marketingGetBnb(amountBNBMarketing) (luck.sol#306)
- tokenForApp(tokensForApp) (luck.sol#309)
- tokenForNft(tokensForNft) (luck.sol#308)
Reentrancy in Luck2Earn.swapAndLiquify(uint256) (luck.sol#289-322):
External calls:
- swapTokensForEth(tokensForSwap) (luck.sol#297)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
External calls sending eth:
- transferToAddressETH(marketingWalletAddress,amountBNBMarketing) (luck.sol#318)
- recipient.transfer(amount) (luck.sol#232)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
Event emitted after the call(s):
- Approval(owner,spender,amount) (luck.sol#159)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
Reentrancy in Luck2Earn.swapTokensForEth(uint256) (luck.sol#324-342):
External calls:
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
Event emitted after the call(s):
- SwapTokensForETH(tokenAmount,path) (luck.sol#341)
Reentrancy in Luck2Earn.transferFrom(address,address,uint256) (luck.sol#242-246):
External calls:
- _transfer(sender,recipient,amount) (luck.sol#243)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
External calls sending eth:
- _transfer(sender,recipient,amount) (luck.sol#243)
- recipient.transfer(amount) (luck.sol#232)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
Event emitted after the call(s):
- Approval(owner,spender,amount) (luck.sol#159)
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (luck.sol#244)
Apply the check-effects-interactions pattern.
Additional information: link
Redundant expression "this (Utils.sol#12)" inContext (Utils.sol#5-15)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Reentrancy in Luck2Earn._transfer(address,address,uint256) (luck.sol#248-280):
External calls:
- swapAndLiquify(contractTokenBalance) (luck.sol#267)
- recipient.transfer(amount) (luck.sol#232)
External calls sending eth:
- swapAndLiquify(contractTokenBalance) (luck.sol#267)
- recipient.transfer(amount) (luck.sol#232)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
State variables written after the call(s):
- _balances[sender] = _balances[sender].sub(amount,Insufficient Balance) (luck.sol#270)
- _balances[recipient] = _balances[recipient].add(finalAmount) (luck.sol#275)
- finalAmount = takeFee(sender,recipient,amount) (luck.sol#272-273)
- _balances[address(this)] = _balances[address(this)].add(feeAmount) (luck.sol#371)
Event emitted after the call(s):
- Transfer(sender,address(this),feeAmount) (luck.sol#372)
- finalAmount = takeFee(sender,recipient,amount) (luck.sol#272-273)
- Transfer(sender,recipient,finalAmount) (luck.sol#277)
Reentrancy in Luck2Earn.swapAndLiquify(uint256) (luck.sol#289-322):
External calls:
- transferToAddressETH(marketingWalletAddress,amountBNBMarketing) (luck.sol#318)
- recipient.transfer(amount) (luck.sol#232)
External calls sending eth:
- transferToAddressETH(marketingWalletAddress,amountBNBMarketing) (luck.sol#318)
- recipient.transfer(amount) (luck.sol#232)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
State variables written after the call(s):
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- _allowances[owner][spender] = amount (luck.sol#158)
Event emitted after the call(s):
- Approval(owner,spender,amount) (luck.sol#159)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
Reentrancy in Luck2Earn.transferFrom(address,address,uint256) (luck.sol#242-246):
External calls:
- _transfer(sender,recipient,amount) (luck.sol#243)
- recipient.transfer(amount) (luck.sol#232)
External calls sending eth:
- _transfer(sender,recipient,amount) (luck.sol#243)
- recipient.transfer(amount) (luck.sol#232)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
State variables written after the call(s):
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (luck.sol#244)
- _allowances[owner][spender] = amount (luck.sol#158)
Event emitted after the call(s):
- Approval(owner,spender,amount) (luck.sol#159)
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (luck.sol#244)
Apply the check-effects-interactions pattern.
Additional information: link
Variable IDEXRouter.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (Utils.sol#182) is too similar to IDEXRouter.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (Utils.sol#183)
Prevent variables from having similar names.
Additional information: link
Ownable.asdasd (Utils.sol#135) is never used in Luck2Earn (luck.sol#7-383)
Ownable._lockTime (Utils.sol#136) is never used in Luck2Earn (luck.sol#7-383)
Remove unused state variables.
Additional information: link
waiveOwnership() should be declared external:
- Ownable.waiveOwnership() (Utils.sol#155-158)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (Utils.sol#160-164)
getTime() should be declared external:
- Ownable.getTime() (Utils.sol#166-168)
name() should be declared external:
- Luck2Earn.name() (luck.sol#111-113)
symbol() should be declared external:
- Luck2Earn.symbol() (luck.sol#115-117)
decimals() should be declared external:
- Luck2Earn.decimals() (luck.sol#119-121)
totalSupply() should be declared external:
- Luck2Earn.totalSupply() (luck.sol#123-125)
allowance(address,address) should be declared external:
- Luck2Earn.allowance(address,address) (luck.sol#131-133)
increaseAllowance(address,uint256) should be declared external:
- Luck2Earn.increaseAllowance(address,uint256) (luck.sol#135-138)
decreaseAllowance(address,uint256) should be declared external:
- Luck2Earn.decreaseAllowance(address,uint256) (luck.sol#140-143)
minimumTokensBeforeSwapAmount() should be declared external:
- Luck2Earn.minimumTokensBeforeSwapAmount() (luck.sol#145-147)
approve(address,uint256) should be declared external:
- Luck2Earn.approve(address,uint256) (luck.sol#149-152)
setMarketPairStatus(address,bool) should be declared external:
- Luck2Earn.setMarketPairStatus(address,bool) (luck.sol#162-164)
setIsExcludedFromFee(address,bool) should be declared external:
- Luck2Earn.setIsExcludedFromFee(address,bool) (luck.sol#167-169)
setSwapAndLiquifyEnabled(bool) should be declared external:
- Luck2Earn.setSwapAndLiquifyEnabled(bool) (luck.sol#218-221)
setSwapAndLiquifyByLimitOnly(bool) should be declared external:
- Luck2Earn.setSwapAndLiquifyByLimitOnly(bool) (luck.sol#223-225)
getCirculatingSupply() should be declared external:
- Luck2Earn.getCirculatingSupply() (luck.sol#227-229)
transfer(address,uint256) should be declared external:
- Luck2Earn.transfer(address,uint256) (luck.sol#237-240)
transferFrom(address,address,uint256) should be declared external:
- Luck2Earn.transferFrom(address,address,uint256) (luck.sol#242-246)
Use the external attribute for functions never called from the contract.
Additional information: link
Reentrancy in Luck2Earn.constructor() (luck.sol#90-109):
External calls:
- idexPair = IDEXFactory(_idexV2Router.factory()).createPair(address(this),_idexV2Router.WETH()) (luck.sol#92-93)
State variables written after the call(s):
- _allowances[address(this)][address(idexV2Router)] = _totalSupply (luck.sol#96)
- _balances[_msgSender()] = _totalSupply (luck.sol#107)
- _totalDistributionShares = _liquidityShare.add(_marketingShare).add(_nftShare).add(_appShare) (luck.sol#103)
- _totalTaxIfBuying = _buyLiquidityFee.add(_buyMarketingFee).add(_buyNftFee).add(_buyAppFee) (luck.sol#101)
- _totalTaxIfSelling = _sellLiquidityFee.add(_sellMarketingFee).add(_sellNftFee).add(_sellAppFee) (luck.sol#102)
- idexV2Router = _idexV2Router (luck.sol#95)
- isExcludedFromFee[owner()] = true (luck.sol#98)
- isExcludedFromFee[address(this)] = true (luck.sol#99)
- isMarketPair[address(idexPair)] = true (luck.sol#105)
Reentrancy in Luck2Earn.swapAndLiquify(uint256) (luck.sol#289-322):
External calls:
- swapTokensForEth(tokensForSwap) (luck.sol#297)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
State variables written after the call(s):
- _basicTransfer(address(this),appWalletAddress,tokensForApp) (luck.sol#312)
- _balances[sender] = _balances[sender].sub(amount,Insufficient Balance) (luck.sol#283)
- _balances[recipient] = _balances[recipient].add(amount) (luck.sol#284)
- _basicTransfer(address(this),nftWalletAddress,tokensForNft) (luck.sol#315)
- _balances[sender] = _balances[sender].sub(amount,Insufficient Balance) (luck.sol#283)
- _balances[recipient] = _balances[recipient].add(amount) (luck.sol#284)
Reentrancy in Luck2Earn.swapAndLiquify(uint256) (luck.sol#289-322):
External calls:
- swapTokensForEth(tokensForSwap) (luck.sol#297)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
External calls sending eth:
- transferToAddressETH(marketingWalletAddress,amountBNBMarketing) (luck.sol#318)
- recipient.transfer(amount) (luck.sol#232)
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
State variables written after the call(s):
- addLiquidity(tokensForLP,amountBNBLiquidity) (luck.sol#321)
- _allowances[owner][spender] = amount (luck.sol#158)
Reentrancy in Luck2Earn.transferFrom(address,address,uint256) (luck.sol#242-246):
External calls:
- _transfer(sender,recipient,amount) (luck.sol#243)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
- idexV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (luck.sol#333-339)
External calls sending eth:
- _transfer(sender,recipient,amount) (luck.sol#243)
- recipient.transfer(amount) (luck.sol#232)
- idexV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,owner(),block.timestamp) (luck.sol#349-356)
State variables written after the call(s):
- _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,ERC20: transfer amount exceeds allowance)) (luck.sol#244)
- _allowances[owner][spender] = amount (luck.sol#158)
Apply the check-effects-interactions pattern.
Additional information: link
Address.isContract(address) (Utils.sol#83-88) uses assembly
- INLINE ASM (Utils.sol#86)
Address._functionCallWithValue(address,bytes,uint256,string) (Utils.sol#113-130) uses assembly
- INLINE ASM (Utils.sol#122-125)
Do not use evm assembly.
Additional information: link
Address._functionCallWithValue(address,bytes,uint256,string) (Utils.sol#113-130) is never used and should be removed
Address.functionCall(address,bytes) (Utils.sol#96-98) is never used and should be removed
Address.functionCall(address,bytes,string) (Utils.sol#100-102) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (Utils.sol#104-106) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (Utils.sol#108-111) is never used and should be removed
Address.isContract(address) (Utils.sol#83-88) is never used and should be removed
Address.sendValue(address,uint256) (Utils.sol#90-94) is never used and should be removed
Context._msgData() (Utils.sol#11-14) is never used and should be removed
SafeMath.mod(uint256,uint256) (Utils.sol#71-73) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (Utils.sol#75-78) is never used and should be removed
Remove unused functions.
Additional information: link
Function IDEXRouter.WETH() (Utils.sol#177) is not in mixedCase
Event Luck2EarninSwapAndLiquifyStatus(bool) (luck.sol#74) is not in CapWords
Event Luck2EarnstepLiquify(bool,bool,bool,bool) (luck.sol#75) is not in CapWords
Event Luck2EarnstepFee(bool) (luck.sol#76) is not in CapWords
Event Luck2EarntokenForNft(uint256) (luck.sol#78) is not in CapWords
Event Luck2EarntokenForApp(uint256) (luck.sol#79) is not in CapWords
Event Luck2EarnmarketingGetBnb(uint256) (luck.sol#80) is not in CapWords
Event Luck2EarnliquidityGetBnb(uint256) (luck.sol#81) is not in CapWords
Event Luck2EarneventSwapAndLiquify(uint256) (luck.sol#82) is not in CapWords
Parameter Luck2Earn.setSwapAndLiquifyEnabled(bool)._enabled (luck.sol#218) is not in mixedCase
Variable Luck2Earn._balances (luck.sol#22) is not in mixedCase
Variable Luck2Earn._buyLiquidityFee (luck.sol#28) is not in mixedCase
Variable Luck2Earn._buyMarketingFee (luck.sol#29) is not in mixedCase
Variable Luck2Earn._buyNftFee (luck.sol#30) is not in mixedCase
Variable Luck2Earn._buyAppFee (luck.sol#31) is not in mixedCase
Variable Luck2Earn._sellLiquidityFee (luck.sol#33) is not in mixedCase
Variable Luck2Earn._sellMarketingFee (luck.sol#34) is not in mixedCase
Variable Luck2Earn._sellNftFee (luck.sol#35) is not in mixedCase
Variable Luck2Earn._sellAppFee (luck.sol#36) is not in mixedCase
Variable Luck2Earn._liquidityShare (luck.sol#38) is not in mixedCase
Variable Luck2Earn._marketingShare (luck.sol#39) is not in mixedCase
Variable Luck2Earn._nftShare (luck.sol#40) is not in mixedCase
Variable Luck2Earn._appShare (luck.sol#41) is not in mixedCase
Variable Luck2Earn._totalTaxIfBuying (luck.sol#43) is not in mixedCase
Variable Luck2Earn._totalTaxIfSelling (luck.sol#44) is not in mixedCase
Variable Luck2Earn._totalDistributionShares (luck.sol#45) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Ownable.waiveOwnership() (Utils.sol#155-158) uses literals with too many digits:
- OwnershipTransferred(_owner,address(0x000000000000000000000000000000000000dEaD)) (Utils.sol#156)
Ownable.waiveOwnership() (Utils.sol#155-158) uses literals with too many digits:
- _owner = address(0x000000000000000000000000000000000000dEaD) (Utils.sol#157)
Luck2Earn.slitherConstructorVariables() (luck.sol#7-383) uses literals with too many digits:
- deadAddress = 0x000000000000000000000000000000000000dEaD (luck.sol#20)
Luck2Earn.slitherConstructorVariables() (luck.sol#7-383) uses literals with too many digits:
- _totalSupply = 100000000 * 10 ** _decimals (luck.sol#47)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
Luck2Earn._decimals (luck.sol#14) should be constant
Luck2Earn._name (luck.sol#12) should be constant
Luck2Earn._symbol (luck.sol#13) should be constant
Ownable._lockTime (Utils.sol#136) should be constant
Ownable.asdasd (Utils.sol#135) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
Luck2Earn.setBuyTaxes(uint256,uint256,uint256,uint256) (luck.sol#172-180) should emit an event for:
- _totalTaxIfBuying = _buyLiquidityFee.add(_buyMarketingFee).add(_buyNftFee).add(_buyAppFee) (luck.sol#179)
Luck2Earn.setSelTaxes(uint256,uint256,uint256,uint256) (luck.sol#182-190) should emit an event for:
- _totalTaxIfSelling = _sellLiquidityFee.add(_sellMarketingFee).add(_sellNftFee).add(_sellAppFee) (luck.sol#189)
Luck2Earn.setDistributionSettings(uint256,uint256,uint256,uint256) (luck.sol#192-200) should emit an event for:
- _liquidityShare = newLiquidityShare (luck.sol#194)
- _nftShare = newNftShare (luck.sol#196)
- _appShare = newAppShare (luck.sol#197)
- _totalDistributionShares = _liquidityShare.add(_marketingShare).add(_nftShare).add(_appShare) (luck.sol#199)
Luck2Earn.setNumTokensBeforeSwap(uint256) (luck.sol#202-204) should emit an event for:
- minimumTokensBeforeSwap = newLimit (luck.sol#203)
Emit an event for critical parameter changes.
Additional information: link
Luck2Earn.setMarketingWalletAddress(address).newAddress (luck.sol#206) lacks a zero-check on :
- marketingWalletAddress = address(newAddress) (luck.sol#207)
Luck2Earn.setNftWalletAddress(address).newAddress (luck.sol#210) lacks a zero-check on :
- nftWalletAddress = address(newAddress) (luck.sol#211)
Luck2Earn.setAppWalletAddress(address).newAddress (luck.sol#214) lacks a zero-check on :
- appWalletAddress = address(newAddress) (luck.sol#215)
Check that the address is not zero.
Additional information: link
Luck2Earn._totalSupply (luck.sol#47) is set pre-construction with a non-constant function or state variable:
- 100000000 * 10 ** _decimals
Luck2Earn.minimumTokensBeforeSwap (luck.sol#48) is set pre-construction with a non-constant function or state variable:
- 1 * 10 ** _decimals
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
Low level call in Address.sendValue(address,uint256) (Utils.sol#90-94):
- (success) = recipient.call{value: amount}() (Utils.sol#92)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (Utils.sol#113-130):
- (success,returndata) = target.call{value: weiValue}(data) (Utils.sol#116)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Contract has 3% buy tax and 18% sell tax.
Taxes are suspiciously high (over 10%) and contract ownership is not renounced. Token has a high risk of becoming a honeypot.
Number of Binance Smart Chain (BSC) token holders is low.
Token is deployed only at one blockchain
Token has only one trading pair
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
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 relatively low CoinMarketCap rank
Twitter account has few posts