BX Token Logo

BX Token

About BX

Listings

Not Found
Token 15 months

Website

Not Found

Description

Not Found

Social

Not Found

Laser Scorebeta Last Audit: 1 February 2023

report
Token seems to be anonymous. As long as we are unable to find website score is limited.

FatToken.claimBalance() (#794-796) sends eth to arbitrary user
Dangerous calls:
- address(fundAddress).transfer(address(this).balance) (#795)
Ensure that an arbitrary user cannot withdraw unauthorized funds.

Additional information: link

Reentrancy in FatToken._transfer(address,address,uint256) (#411-503):
External calls:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
- FIST.transferFrom(address(_tokenDistributor),address(this),lpFist) (#643-647)
- FIST.transferFrom(address(_tokenDistributor),fundAddress,fundAmount) (#651-655)
- _swapRouter.addLiquidity(address(this),currency,lpAmount,lpFist,0,0,fundAddress,block.timestamp) (#659-668)
External calls sending eth:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
State variables written after the call(s):
- _tokenTransfer(from,to,amount,takeFee,isSell) (#495)
- _balances[sender] = _balances[sender] - tAmount (#523)
- _balances[to] = _balances[to] + tAmount (#678)
Apply the check-effects-interactions pattern.

Additional information: link

FatToken.processReward(uint256) (#839-886) ignores return value by FIST.transferFrom(address(_rewardTokenDistributor),address(this),balance) (#851)
FatToken.claimToken(address,uint256,address) (#798-804) ignores return value by IERC20(token).transfer(to,amount) (#803)
FatToken.swapTokenForFund(uint256,uint256) (#569-671) ignores return value by FIST.transferFrom(address(_tokenDistributor),fundAddress,fundAmount) (#651-655)
FatToken.swapTokenForFund(uint256,uint256) (#569-671) ignores return value by FIST.transferFrom(address(_tokenDistributor),address(this),lpFist) (#643-647)
FatToken.processReward(uint256) (#839-886) ignores return value by FIST.transfer(shareHolder,amount) (#875)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.

Additional information: link


Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)


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.


Combination 2: Unchecked transfer + 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.


Combination 3: Reentrancy vulnerabilities + Unchecked transfer vulnerability. 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)

FatToken.addHolder(address) (#819-833) uses assembly
- INLINE ASM (#821-823)
Do not use evm assembly.

Additional information: link

FatToken.constructor(string[],address[],uint256[],bool[]) (#218-308) compares to a boolean constant:
-currencyIsEth == false (#251)
Remove the equality to the boolean constant.

Additional information: link

Reentrancy in FatToken.processReward(uint256) (#839-886):
External calls:
- FIST.transferFrom(address(_rewardTokenDistributor),address(this),balance) (#851)
State variables written after the call(s):
- progressRewardBlock = block.number (#885)
Reentrancy in FatToken.processReward(uint256) (#839-886):
External calls:
- FIST.transferFrom(address(_rewardTokenDistributor),address(this),balance) (#851)
- FIST.transfer(shareHolder,amount) (#875)
State variables written after the call(s):
- currentIndex ++ (#881)
Apply the check-effects-interactions pattern.

Additional information: link

FatToken._transfer(address,address,uint256) (#411-503) uses tx.origin for authorization: block.number != user2blocks[tx.origin] (#460)
Do not use tx.origin for authorization.

Additional information: link

FatToken.multi_bclist(address[],bool).i (#761) is a local variable never initialized
FatToken._transfer(address,address,uint256).isSell (#424) is a local variable never initialized
FatToken._transfer(address,address,uint256).takeFee (#423) is a local variable never initialized
FatToken._tokenTransfer(address,address,uint256,bool,bool).feeAmount (#524) is a local variable never initialized
Initialize all the variables. If a variable is meant to be initialized to zero, explicitly set it to zero to improve code readability.

Additional information: link

FatToken.constructor(string[],address[],uint256[],bool[]) (#218-308) ignores return value by IERC20(currency).approve(address(swapRouter),MAX) (#257)
FatToken.swapTokenForFund(uint256,uint256) (#569-671) ignores return value by _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
TokenDistributor.constructor(address) (#149-151) ignores return value by IERC20(token).approve(msg.sender,uint256(~ uint256(0))) (#150)
FatToken.swapTokenForFund(uint256,uint256) (#569-671) ignores return value by _swapRouter.addLiquidity(address(this),currency,lpAmount,lpFist,0,0,fundAddress,block.timestamp) (#659-668)
FatToken.completeCustoms(uint256[],address) (#712-744) ignores return value by IERC20(currency).approve(address(swapRouter),MAX) (#732)
Ensure that all the return values of the function calls are used.

Additional information: link

FatToken._approve(address,address,uint256).owner (#372) shadows:
- Ownable.owner() (#127-129) (function)
FatToken.allowance(address,address).owner (#339) shadows:
- Ownable.owner() (#127-129) (function)
Rename the local variables that shadow another component.

Additional information: link

FatToken.setFundAddress(address) (#682-685) should emit an event for:
- fundAddress = addr (#683)
Emit an event for critical parameter changes.

Additional information: link

FatToken.completeCustoms(uint256[],address) (#712-744) should emit an event for:
- _buyFundFee = customs[0] (#717)
- _buyLPFee = customs[1] (#718)
- _buyRewardFee = customs[2] (#719)
- _sellFundFee = customs[3] (#720)
- _sellLPFee = customs[4] (#721)
- _sellRewardFee = customs[5] (#722)
FatToken.setAirdropNumbs(uint256) (#406-409) should emit an event for:
- airdropNumbs = newValue (#408)
FatToken.setHolderRewardCondition(uint256) (#888-890) should emit an event for:
- holderRewardCondition = amount (#889)
FatToken.changeSwapLimit(uint256) (#786-788) should emit an event for:
- maxSwapAmount = _amount (#787)
FatToken.changeWalletLimit(uint256) (#790-792) should emit an event for:
- maxWalletAmount = _amount (#791)
FatToken.setkb(uint256) (#384-386) should emit an event for:
- kb = a (#385)
Emit an event for critical parameter changes.

Additional information: link

FatToken.constructor(string[],address[],uint256[],bool[]).swapPair (#263) lacks a zero-check on :
- _mainPair = swapPair (#264)
FatToken.setFundAddress(address).addr (#682) lacks a zero-check on :
- fundAddress = addr (#683)
FatToken.setCurrency(address)._currency (#746) lacks a zero-check on :
- currency = _currency (#747)
Check that the address is not zero.

Additional information: link

Reentrancy in FatToken.transferFrom(address,address,uint256) (#357-369):
External calls:
- _transfer(sender,recipient,amount) (#362)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- FIST.transferFrom(address(_rewardTokenDistributor),address(this),balance) (#851)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
- FIST.transfer(shareHolder,amount) (#875)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
- FIST.transferFrom(address(_tokenDistributor),address(this),lpFist) (#643-647)
- FIST.transferFrom(address(_tokenDistributor),fundAddress,fundAmount) (#651-655)
- _swapRouter.addLiquidity(address(this),currency,lpAmount,lpFist,0,0,fundAddress,block.timestamp) (#659-668)
External calls sending eth:
- _transfer(sender,recipient,amount) (#362)
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
State variables written after the call(s):
- _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount (#364-366)
Reentrancy in FatToken.completeCustoms(uint256[],address) (#712-744):
External calls:
- IERC20(currency).approve(address(swapRouter),MAX) (#732)
- swapPair = swapFactory.createPair(address(this),currency) (#738)
State variables written after the call(s):
- _feeWhiteList[address(swapRouter)] = true (#742)
- _mainPair = swapPair (#740)
- _swapPairList[swapPair] = true (#741)
Reentrancy in FatToken._transfer(address,address,uint256) (#411-503):
External calls:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
- FIST.transferFrom(address(_tokenDistributor),address(this),lpFist) (#643-647)
- FIST.transferFrom(address(_tokenDistributor),fundAddress,fundAmount) (#651-655)
- _swapRouter.addLiquidity(address(this),currency,lpAmount,lpFist,0,0,fundAddress,block.timestamp) (#659-668)
External calls sending eth:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
State variables written after the call(s):
- addHolder(from) (#499)
- holderIndex[adr] = holders.length (#829)
- addHolder(from) (#499)
- holders.push(adr) (#830)
Reentrancy in FatToken.processReward(uint256) (#839-886):
External calls:
- FIST.transferFrom(address(_rewardTokenDistributor),address(this),balance) (#851)
State variables written after the call(s):
- currentIndex = 0 (#868)
Reentrancy in FatToken.completeCustoms(uint256[],address) (#712-744):
External calls:
- IERC20(currency).approve(address(swapRouter),MAX) (#732)
State variables written after the call(s):
- _allowances[address(this)][address(swapRouter)] = MAX (#734)
- _swapRouter = swapRouter (#733)
Apply the check-effects-interactions pattern.

Additional information: link

Reentrancy in FatToken.swapTokenForFund(uint256,uint256) (#569-671):
External calls:
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
Event emitted after the call(s):
- Failed_swapExactTokensForETHSupportingFeeOnTransferTokens() (#600)
Reentrancy in FatToken.swapTokenForFund(uint256,uint256) (#569-671):
External calls:
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
External calls sending eth:
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
Event emitted after the call(s):
- Failed_addLiquidityETH() (#635)
Reentrancy in FatToken.swapTokenForFund(uint256,uint256) (#569-671):
External calls:
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
Event emitted after the call(s):
- Failed_swapExactTokensForTokensSupportingFeeOnTransferTokens(0) (#584)
Reentrancy in FatToken.swapTokenForFund(uint256,uint256) (#569-671):
External calls:
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
- FIST.transferFrom(address(_tokenDistributor),address(this),lpFist) (#643-647)
- FIST.transferFrom(address(_tokenDistributor),fundAddress,fundAmount) (#651-655)
- _swapRouter.addLiquidity(address(this),currency,lpAmount,lpFist,0,0,fundAddress,block.timestamp) (#659-668)
Event emitted after the call(s):
- Failed_addLiquidity() (#668)
Reentrancy in FatToken.swapTokenForFund(uint256,uint256) (#569-671):
External calls:
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
Event emitted after the call(s):
- Failed_swapExactTokensForTokensSupportingFeeOnTransferTokens(1) (#608)
Reentrancy in FatToken._transfer(address,address,uint256) (#411-503):
External calls:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(rewardAmount,0,rewardPath,address(_rewardTokenDistributor),block.timestamp) (#578-584)
- _swapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(this),block.timestamp) (#594-600)
- _swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount - lpAmount - rewardAmount,0,path,address(_tokenDistributor),block.timestamp) (#602-608)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
- FIST.transferFrom(address(_tokenDistributor),address(this),lpFist) (#643-647)
- FIST.transferFrom(address(_tokenDistributor),fundAddress,fundAmount) (#651-655)
- _swapRouter.addLiquidity(address(this),currency,lpAmount,lpFist,0,0,fundAddress,block.timestamp) (#659-668)
External calls sending eth:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
Event emitted after the call(s):
- Transfer(sender,to,tAmount) (#679)
- _tokenTransfer(from,to,amount,takeFee,isSell) (#495)
Apply the check-effects-interactions pattern.

Additional information: link

Function FatToken.multi_bclist(address[],bool) (#755-764) is not in mixedCase
Variable FatToken._feeWhiteList (#168) is not in mixedCase
Function ISwapRouter.WETH() (#50) is not in mixedCase
Variable FatToken._swapPairList (#176) is not in mixedCase
Variable FatToken._tokenDistributor (#181) is not in mixedCase
Variable FatToken._sellLPFee (#188) is not in mixedCase
Parameter FatToken.completeCustoms(uint256[],address)._router (#712) is not in mixedCase
Variable FatToken._sellRewardFee (#189) is not in mixedCase
Variable FatToken._rewardList (#169) is not in mixedCase
Event FatTokenFailed_addLiquidityETH() (#565) is not in CapWords
Variable FatToken._swapRouter (#174) is not in mixedCase
Variable Ownable._owner (#114) is not in mixedCase
Variable FatToken.ETH (#198) is not in mixedCase
Variable FatToken._buyFundFee (#184) is not in mixedCase
Parameter FatToken.changeSwapLimit(uint256)._amount (#786) is not in mixedCase
Event FatTokenFailed_addLiquidity() (#566) is not in CapWords
Variable FatToken._sellFundFee (#187) is not in mixedCase
Parameter FatToken.changeWalletLimit(uint256)._amount (#790) is not in mixedCase
Parameter FatToken.setCurrency(address)._currency (#746) is not in mixedCase
Variable FatToken._buyLPFee (#185) is not in mixedCase
Variable FatToken._mainPair (#201) is not in mixedCase
Event FatTokenFailed_swapExactTokensForTokensSupportingFeeOnTransferTokens(uint256) (#563) is not in CapWords
Event FatTokenFailed_swapExactTokensForETHSupportingFeeOnTransferTokens() (#564) is not in CapWords
Variable FatToken._rewardTokenDistributor (#182) is not in mixedCase
Variable FatToken._buyRewardFee (#186) is not in mixedCase
Follow the Solidity naming convention.

Additional information: link

Reentrancy in FatToken.transferFrom(address,address,uint256) (#357-369):
External calls:
- _transfer(sender,recipient,amount) (#362)
- address(fundAddress).transfer(fundAmount) (#624)
External calls sending eth:
- _transfer(sender,recipient,amount) (#362)
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
State variables written after the call(s):
- _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount (#364-366)
Reentrancy in FatToken._transfer(address,address,uint256) (#411-503):
External calls:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- address(fundAddress).transfer(fundAmount) (#624)
External calls sending eth:
- swapTokenForFund(numTokensSellToFund,swapFee) (#484)
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
State variables written after the call(s):
- _tokenTransfer(from,to,amount,takeFee,isSell) (#495)
- _balances[sender] = _balances[sender] - tAmount (#523)
- _balances[to] = _balances[to] + tAmount (#678)
- processReward(500000) (#501)
- currentIndex = 0 (#868)
- currentIndex ++ (#881)
- addHolder(from) (#499)
- holderIndex[adr] = holders.length (#829)
- addHolder(from) (#499)
- holders.push(adr) (#830)
- processReward(500000) (#501)
- progressRewardBlock = block.number (#885)
Event emitted after the call(s):
- Transfer(sender,to,tAmount) (#679)
- _tokenTransfer(from,to,amount,takeFee,isSell) (#495)
Reentrancy in FatToken.swapTokenForFund(uint256,uint256) (#569-671):
External calls:
- address(fundAddress).transfer(fundAmount) (#624)
External calls sending eth:
- address(fundAddress).transfer(fundAmount) (#624)
- _swapRouter.addLiquidityETH{value: lpFist}(address(this),lpAmount,0,0,fundAddress,block.timestamp) (#628-635)
Event emitted after the call(s):
- Failed_addLiquidityETH() (#635)
Apply the check-effects-interactions pattern.

Additional information: link

Variable ISwapRouter.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#71) is too similar to ISwapRouter.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#72)
Prevent variables from having similar names.

Additional information: link

FatToken._transfer(address,address,uint256) (#411-503) uses literals with too many digits:
- processReward(500000) (#501)
FatToken.constructor(string[],address[],uint256[],bool[]) (#218-308) uses literals with too many digits:
- excludeHolder[address(0x000000000000000000000000000000000000dEaD)] = true (#300-302)
Use: Ether suffix, Time suffix, or The scientific notation

Additional information: link

FatToken.limitEnable (#166) should be constant
Add the constant attributes to state variables that never change.

Additional information: link

setFeeWhiteList(address[],bool) should be declared external:
- FatToken.setFeeWhiteList(address[],bool) (#703-710)
transfer(address,uint256) should be declared external:
- FatToken.transfer(address,uint256) (#330-337)
disableChangeTax() should be declared external:
- FatToken.disableChangeTax() (#778-780)
setAirDropEnable(bool) should be declared external:
- FatToken.setAirDropEnable(bool) (#394-396)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#136-139)
setCurrency(address) should be declared external:
- FatToken.setCurrency(address) (#746-753)
owner() should be declared external:
- Ownable.owner() (#127-129)
setAirdropNumbs(uint256) should be declared external:
- FatToken.setAirdropNumbs(uint256) (#406-409)
approve(address,uint256) should be declared external:
- FatToken.approve(address,uint256) (#348-355)
totalSupply() should be declared external:
- FatToken.totalSupply() (#322-324)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#141-145)
multi_bclist(address[],bool) should be declared external:
- FatToken.multi_bclist(address[],bool) (#755-764)
disableSwapLimit() should be declared external:
- FatToken.disableSwapLimit() (#770-772)
disableWalletLimit() should be declared external:
- FatToken.disableWalletLimit() (#774-776)
allowance(address,address) should be declared external:
- FatToken.allowance(address,address) (#339-346)
transferFrom(address,address,uint256) should be declared external:
- FatToken.transferFrom(address,address,uint256) (#357-369)
disableKillBatchBot() should be declared external:
- FatToken.disableKillBatchBot() (#766-768)
setkb(uint256) should be declared external:
- FatToken.setkb(uint256) (#384-386)
Use the external attribute for functions never called from the contract.

Additional information: link

Holders:


Token seems to be untradeable: there is no PancakeSwap trading pair and no trading volumes. Ignore for presale.


Unable to find Telegram and Twitter accounts


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

Price for BX