Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
BigChainToken.addLiquidity(uint256,uint256) (#1052-1065) sends eth to arbitrary user
Dangerous calls:
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
BigChainToken.airdrop(address) (#1458-1471) sends eth to arbitrary user
Dangerous calls:
- address(address(uint160(_refer))).transfer(referEth) (#1467)
Ensure that an arbitrary user cannot withdraw unauthorized funds.
Additional information: link
Reentrancy in BigChainToken._transfer(address,address,uint256) (#966-997):
External calls:
- swapAndLiquify() (#976)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- swapAndLiquify() (#976)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
State variables written after the call(s):
- super._transfer(sender,recipient,amount) (#980)
- _balances[sender] = _balances[sender].sub(amount,BEP20: transfer amount exceeds balance) (#576)
- _balances[recipient] = _balances[recipient].add(amount) (#577)
- super._transfer(sender,BURN_ADDRESS,burnAmount) (#992)
- _balances[sender] = _balances[sender].sub(amount,BEP20: transfer amount exceeds balance) (#576)
- _balances[recipient] = _balances[recipient].add(amount) (#577)
- super._transfer(sender,address(this),liquidityAmount) (#993)
- _balances[sender] = _balances[sender].sub(amount,BEP20: transfer amount exceeds balance) (#576)
- _balances[recipient] = _balances[recipient].add(amount) (#577)
- super._transfer(sender,recipient,sendAmount) (#994)
- _balances[sender] = _balances[sender].sub(amount,BEP20: transfer amount exceeds balance) (#576)
- _balances[recipient] = _balances[recipient].add(amount) (#577)
Reentrancy in BigChainToken.airdrop(address) (#1458-1471):
External calls:
- _transfer(address(this),_msgSender(),_airdropToken) (#1460)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- _transfer(address(this),_refer,referToken) (#1463)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- _transfer(address(this),_msgSender(),_airdropToken) (#1460)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- _transfer(address(this),_refer,referToken) (#1463)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
State variables written after the call(s):
- _transfer(address(this),_refer,referToken) (#1463)
- _balances[sender] = _balances[sender].sub(amount,BEP20: transfer amount exceeds balance) (#576)
- _balances[recipient] = _balances[recipient].add(amount) (#577)
- _transfer(address(this),_refer,referToken) (#1463)
- _inSwapAndLiquify = true (#934)
- _inSwapAndLiquify = false (#936)
- _transfer(address(this),_refer,referToken) (#1463)
- transferTaxRate = 0 (#941)
- transferTaxRate = _transferTaxRate (#943)
Reentrancy in BigChainToken.buy(address) (#1473-1489):
External calls:
- _transfer(address(this),_msgSender(),_token) (#1478)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- _transfer(address(this),_refer,referToken) (#1481)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- _transfer(address(this),_msgSender(),_token) (#1478)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- _transfer(address(this),_refer,referToken) (#1481)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
State variables written after the call(s):
- _transfer(address(this),_refer,referToken) (#1481)
- _balances[sender] = _balances[sender].sub(amount,BEP20: transfer amount exceeds balance) (#576)
- _balances[recipient] = _balances[recipient].add(amount) (#577)
- _transfer(address(this),_refer,referToken) (#1481)
- _inSwapAndLiquify = true (#934)
- _inSwapAndLiquify = false (#936)
- _transfer(address(this),_refer,referToken) (#1481)
- transferTaxRate = 0 (#941)
- transferTaxRate = _transferTaxRate (#943)
Apply the check-effects-interactions pattern.
Additional information: link
BigChainToken._writeCheckpoint(address,uint32,uint256,uint256) (#1367-1385) uses a dangerous strict equality:
- nCheckpoints > 0 && checkpoints[delegatee][nCheckpoints - 1].fromBlock == blockNumber (#1377)
Don't use strict equality to determine if an account has enough Ether or tokens.
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.
BigChainToken._transfer(address,address,uint256) (#966-997) performs a multiplication on the result of a division:
-taxAmount = amount.mul(transferTaxRate).div(10000) (#983)
-burnAmount = taxAmount.mul(burnRate).div(100) (#984)
Consider ordering multiplication before division.
Additional information: link
BigChainToken.addLiquidity(uint256,uint256) (#1052-1065) ignores return value by BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
Ensure that all the return values of the function calls are used.
Additional information: link
BEP20.constructor(string,string).name (#406) shadows:
- BEP20.name() (#422-424) (function)
- IBEP20.name() (#116) (function)
BEP20.constructor(string,string).symbol (#406) shadows:
- BEP20.symbol() (#430-432) (function)
- IBEP20.symbol() (#111) (function)
BEP20.allowance(address,address).owner (#471) shadows:
- Ownable.owner() (#58-60) (function)
BEP20._approve(address,address,uint256).owner (#630) shadows:
- Ownable.owner() (#58-60) (function)
BigChainToken.swapAndLiquify().maxTransferAmount (#1002) shadows:
- BigChainToken.maxTransferAmount() (#1070-1072) (function)
Rename the local variables that shadow another component.
Additional information: link
BigChainToken.set(uint8,uint256) (#1428-1456) should emit an event for:
- _referEth = value (#1436)
- _referToken = value (#1438)
- _airdropEth = value (#1440)
- _airdropToken = value (#1442)
- salePrice = value (#1446)
- _airdorpBnb = value (#1449)
- _buyBnb = value (#1451)
Emit an event for critical parameter changes.
Additional information: link
Reentrancy in BigChainToken.airdrop(address) (#1458-1471):
External calls:
- _transfer(address(this),_msgSender(),_airdropToken) (#1460)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- _transfer(address(this),_refer,referToken) (#1463)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- _transfer(address(this),_msgSender(),_airdropToken) (#1460)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- _transfer(address(this),_refer,referToken) (#1463)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
State variables written after the call(s):
- _transfer(address(this),_refer,referToken) (#1463)
- _allowances[owner][spender] = amount (#634)
Reentrancy in BigChainToken.buy(address) (#1473-1489):
External calls:
- _transfer(address(this),_msgSender(),_token) (#1478)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- _transfer(address(this),_refer,referToken) (#1481)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- _transfer(address(this),_msgSender(),_token) (#1478)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- _transfer(address(this),_refer,referToken) (#1481)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
State variables written after the call(s):
- _transfer(address(this),_refer,referToken) (#1481)
- _allowances[owner][spender] = amount (#634)
Reentrancy in BigChainToken.swapAndLiquify() (#1000-1030):
External calls:
- swapTokensForEth(half) (#1020)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- addLiquidity(otherHalf,newBalance) (#1026)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#1026)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
State variables written after the call(s):
- addLiquidity(otherHalf,newBalance) (#1026)
- _allowances[owner][spender] = amount (#634)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in BigChainToken._transfer(address,address,uint256) (#966-997):
External calls:
- swapAndLiquify() (#976)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- swapAndLiquify() (#976)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
Event emitted after the call(s):
- Transfer(sender,recipient,amount) (#578)
- super._transfer(sender,recipient,amount) (#980)
- Transfer(sender,recipient,amount) (#578)
- super._transfer(sender,recipient,sendAmount) (#994)
- Transfer(sender,recipient,amount) (#578)
- super._transfer(sender,BURN_ADDRESS,burnAmount) (#992)
- Transfer(sender,recipient,amount) (#578)
- super._transfer(sender,address(this),liquidityAmount) (#993)
Reentrancy in BigChainToken.airdrop(address) (#1458-1471):
External calls:
- _transfer(address(this),_msgSender(),_airdropToken) (#1460)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- _transfer(address(this),_refer,referToken) (#1463)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- _transfer(address(this),_msgSender(),_airdropToken) (#1460)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- _transfer(address(this),_refer,referToken) (#1463)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#635)
- _transfer(address(this),_refer,referToken) (#1463)
- SwapAndLiquify(half,newBalance,otherHalf) (#1028)
- _transfer(address(this),_refer,referToken) (#1463)
- Transfer(sender,recipient,amount) (#578)
- _transfer(address(this),_refer,referToken) (#1463)
Reentrancy in BigChainToken.buy(address) (#1473-1489):
External calls:
- _transfer(address(this),_msgSender(),_token) (#1478)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- _transfer(address(this),_refer,referToken) (#1481)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
External calls sending eth:
- _transfer(address(this),_msgSender(),_token) (#1478)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
- _transfer(address(this),_refer,referToken) (#1481)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#635)
- _transfer(address(this),_refer,referToken) (#1481)
- SwapAndLiquify(half,newBalance,otherHalf) (#1028)
- _transfer(address(this),_refer,referToken) (#1481)
- Transfer(sender,recipient,amount) (#578)
- _transfer(address(this),_refer,referToken) (#1481)
Reentrancy in BigChainToken.swapAndLiquify() (#1000-1030):
External calls:
- swapTokensForEth(half) (#1020)
- BCTRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (#1042-1048)
- addLiquidity(otherHalf,newBalance) (#1026)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
External calls sending eth:
- addLiquidity(otherHalf,newBalance) (#1026)
- BCTRouter.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,operator(),block.timestamp) (#1057-1064)
Event emitted after the call(s):
- Approval(owner,spender,amount) (#635)
- addLiquidity(otherHalf,newBalance) (#1026)
- SwapAndLiquify(half,newBalance,otherHalf) (#1028)
Apply the check-effects-interactions pattern.
Additional information: link
BigChainToken.delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32) (#1233-1274) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(now <= expiry,BCT::delegateBySig: signature expired) (#1272)
Avoid relying on block.timestamp.
Additional information: link
BigChainToken.getChainId() (#1392-1396) uses assembly
- INLINE ASM (#1394)
Do not use evm assembly.
Additional information: link
BigChainToken._transfer(address,address,uint256) (#966-997) compares to a boolean constant:
-swapAndLiquifyEnabled == true && _inSwapAndLiquify == false && address(BCTRouter) != address(0) && BCTPair != address(0) && sender != BCTPair && sender != owner() (#969-974)
BigChainToken.antiWhale(address,address,uint256) (#921-931) compares to a boolean constant:
-_excludedFromAntiWhale[sender] == false && _excludedFromAntiWhale[recipient] == false (#924-925)
Remove the equality to the boolean constant.
Additional information: link
Different versions of Solidity is used:
- Version used: ['0.6.12', '>=0.4.0', '>=0.5.0', '>=0.6.0<0.8.0', '>=0.6.2', '>=0.6.4']
- >=0.6.0<0.8.0 (#10)
- >=0.6.0<0.8.0 (#27)
- >=0.6.4 (#95)
- >=0.6.0<0.8.0 (#192)
- >=0.4.0 (#354)
- >=0.6.2 (#652)
- >=0.6.2 (#750)
- >=0.5.0 (#796)
- >=0.5.0 (#851)
- 0.6.12 (#871)
Use one Solidity version.
Additional information: link
BEP20._burn(address,uint256) (#609-615) is never used and should be removed
BEP20._burnFrom(address,uint256) (#644-647) is never used and should be removed
Context._msgData() (#17-20) is never used and should be removed
SafeMath.mod(uint256,uint256) (#328-330) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#344-347) is never used and should be removed
Remove unused functions.
Additional information: link
Pragma version>=0.6.0<0.8.0 (#10) is too complex
Pragma version>=0.6.0<0.8.0 (#27) is too complex
Pragma version>=0.6.4 (#95) allows old versions
Pragma version>=0.6.0<0.8.0 (#192) is too complex
Pragma version>=0.4.0 (#354) allows old versions
Pragma version>=0.6.2 (#652) allows old versions
Pragma version>=0.6.2 (#750) allows old versions
Pragma version>=0.5.0 (#796) allows old versions
Pragma version>=0.5.0 (#851) allows old versions
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
Variable Ownable._swAuth (#43) is not in mixedCase
Function IUniswapV2Router01.WETH() (#656) is not in mixedCase
Function IUniswapV2Pair.DOMAIN_SEPARATOR() (#813) is not in mixedCase
Function IUniswapV2Pair.PERMIT_TYPEHASH() (#814) is not in mixedCase
Function IUniswapV2Pair.MINIMUM_LIQUIDITY() (#831) is not in mixedCase
Parameter BigChainToken.mint(address,uint256)._to (#960) is not in mixedCase
Parameter BigChainToken.mint(address,uint256)._amount (#960) is not in mixedCase
Parameter BigChainToken.isExcludedFromAntiWhale(address)._account (#1077) is not in mixedCase
Parameter BigChainToken.updateTransferTaxRate(uint16)._transferTaxRate (#1088) is not in mixedCase
Parameter BigChainToken.updateBurnRate(uint16)._burnRate (#1098) is not in mixedCase
Parameter BigChainToken.updateMaxTransferAmountRate(uint16)._maxTransferAmountRate (#1108) is not in mixedCase
Parameter BigChainToken.updateMinAmountToLiquify(uint256)._minAmount (#1118) is not in mixedCase
Parameter BigChainToken.setExcludedFromAntiWhale(address,bool)._account (#1127) is not in mixedCase
Parameter BigChainToken.setExcludedFromAntiWhale(address,bool)._excluded (#1127) is not in mixedCase
Parameter BigChainToken.updateSwapAndLiquifyEnabled(bool)._enabled (#1135) is not in mixedCase
Parameter BigChainToken.updateBCTRouter(address)._router (#1144) is not in mixedCase
Function BigChainToken.Clear_AllETH() (#1421-1424) is not in mixedCase
Parameter BigChainToken.airdrop(address)._refer (#1458) is not in mixedCase
Parameter BigChainToken.buy(address)._refer (#1473) is not in mixedCase
Variable BigChainToken.BCTRouter (#897) is not in mixedCase
Variable BigChainToken.BCTPair (#899) is not in mixedCase
Variable BigChainToken._delegates (#1175) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (#18)" inContext (#12-21)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Variable IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#661) is too similar to IUniswapV2Router01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#662)
Prevent variables from having similar names.
Additional information: link
BigChainToken.slitherConstructorVariables() (#878-1492) uses literals with too many digits:
- _airdropEth = 5000000000000000 (#1409)
BigChainToken.slitherConstructorVariables() (#878-1492) uses literals with too many digits:
- _airdropToken = 20000000000000000000000 (#1410)
BigChainToken.slitherConstructorVariables() (#878-1492) uses literals with too many digits:
- salePrice = 10000000 (#1418)
BigChainToken.slitherConstructorConstantVariables() (#878-1492) uses literals with too many digits:
- BURN_ADDRESS = 0x000000000000000000000000000000000000dEaD (#886)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
BigChainToken._auth (#1411) is never used in BigChainToken (#878-1492)
BigChainToken._auth2 (#1412) is never used in BigChainToken (#878-1492)
BigChainToken._authNum (#1413) is never used in BigChainToken (#878-1492)
Remove unused state variables.
Additional information: link
BigChainToken._auth (#1411) should be constant
BigChainToken._auth2 (#1412) should be constant
BigChainToken._authNum (#1413) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#77-80)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#86-90)
symbol() should be declared external:
- BEP20.symbol() (#430-432)
decimals() should be declared external:
- BEP20.decimals() (#437-439)
transfer(address,uint256) should be declared external:
- BEP20.transfer(address,uint256) (#463-466)
allowance(address,address) should be declared external:
- BEP20.allowance(address,address) (#471-473)
approve(address,uint256) should be declared external:
- BEP20.approve(address,uint256) (#482-485)
transferFrom(address,address,uint256) should be declared external:
- BEP20.transferFrom(address,address,uint256) (#499-507)
increaseAllowance(address,uint256) should be declared external:
- BEP20.increaseAllowance(address,uint256) (#521-524)
decreaseAllowance(address,uint256) should be declared external:
- BEP20.decreaseAllowance(address,uint256) (#540-543)
mint(uint256) should be declared external:
- BEP20.mint(uint256) (#553-556)
mint(address,uint256) should be declared external:
- BigChainToken.mint(address,uint256) (#960-963)
isExcludedFromAntiWhale(address) should be declared external:
- BigChainToken.isExcludedFromAntiWhale(address) (#1077-1079)
updateTransferTaxRate(uint16) should be declared external:
- BigChainToken.updateTransferTaxRate(uint16) (#1088-1092)
updateBurnRate(uint16) should be declared external:
- BigChainToken.updateBurnRate(uint16) (#1098-1102)
updateMaxTransferAmountRate(uint16) should be declared external:
- BigChainToken.updateMaxTransferAmountRate(uint16) (#1108-1112)
updateMinAmountToLiquify(uint256) should be declared external:
- BigChainToken.updateMinAmountToLiquify(uint256) (#1118-1121)
setExcludedFromAntiWhale(address,bool) should be declared external:
- BigChainToken.setExcludedFromAntiWhale(address,bool) (#1127-1129)
updateSwapAndLiquifyEnabled(bool) should be declared external:
- BigChainToken.updateSwapAndLiquifyEnabled(bool) (#1135-1138)
updateBCTRouter(address) should be declared external:
- BigChainToken.updateBCTRouter(address) (#1144-1149)
transferOperator(address) should be declared external:
- BigChainToken.transferOperator(address) (#1162-1166)
Clear_AllETH() should be declared external:
- BigChainToken.Clear_AllETH() (#1421-1424)
set(uint8,uint256) should be declared external:
- BigChainToken.set(uint8,uint256) (#1428-1456)
airdrop(address) should be declared external:
- BigChainToken.airdrop(address) (#1458-1471)
buy(address) should be declared external:
- BigChainToken.buy(address) (#1473-1489)
Use the external attribute for functions never called from the contract.
Additional information: link
Unable to find website, listings and other project-related information
Young tokens have high risks of scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Unable to find Telegram and Twitter accounts