Birb Token Logo

BIRB Token

About BIRB


Token 2 years
CoinMarketCap 2 years


[CoinMarketCap] alert: Birb has migrated from old contract to new contract. For more details, kindly check the official announcement here.
white paper

Birb aims to become a feature-rich and usable cryptocurrency that rewards its holders.

Laser Scorebeta Last Audit: 18 February 2022

Token seems to be (relatively) fine. It still become a scam, but probability is moderate.

Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains

BEP20.constructor(string,string).name (#313) shadows:
- (#327-329) (function)
BEP20.constructor(string,string).symbol (#313) shadows:
- BEP20.symbol() (#335-337) (function)
Rename the local variables that shadow another component.

Additional information: link

Reentrancy in BIRBToken.hatchNest() (#745-766):
External calls:
- IPancakePair(pancakeSwapPool).sync() (#763)
Event emitted after the call(s):
- PoolHatched(msg.sender,hatchAmount,_totalSupply,balanceOf(pancakeSwapPool),userReward,poolReward) (#765)
Reentrancy in BIRBToken.setPancakeSwapPool() (#696-701):
External calls:
- pancakeSwapPool = pancakeSwapFactory.createPair(address(WBNB),address(this)) (#698)
Event emitted after the call(s):
- PancakePoolCreated(pancakeSwapPool,address(WBNB),msg.sender) (#700)
Apply the check-effects-interactions pattern.

Additional information: link

BIRBToken.getHatchAmount() (#768-773) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)((block.timestamp - lastHatchTime) >= 86400,BIRB: Already Hatched) (#770)
Avoid relying on block.timestamp.

Additional information: link

BIRBToken.claimRewards() (#793-803) compares to a boolean constant:
-require(bool,string)(paused == false,BIRB: Contract is paused) (#794)
Remove the equality to the boolean constant.

Additional information: link

BEP20._burn(address,uint256) (#493-501) is never used and should be removed
BEP20._setupDecimals(uint8) (#531-533) is never used and should be removed
Context._msgData() (#50-53) is never used and should be removed
SafeMath.mod(uint256,uint256) (#265-267) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#281-284) is never used and should be removed
Remove unused functions.

Additional information: link

Variable BEP20._balances (#294) is not in mixedCase
Variable BEP20._totalSupply (#298) is not in mixedCase
Event BIRBTokennewPauserAdded(address,address) (#682) is not in CapWords
Event BIRBTokencontractPaused(bool,address) (#683) is not in CapWords
Event BIRBTokencontractUnPaused(bool,uint256,uint256,uint256,address) (#684) is not in CapWords
Variable BIRBToken.WBNB (#656) is not in mixedCase
Follow the Solidity naming convention.

Additional information: link

Redundant expression "this (#51)" inContext (#45-54)
Remove redundant statements if they congest code but offer no value.

Additional information: link

BEP20.constructor(string,string) (#313-322) uses literals with too many digits:
- _totalSupply = 100000000000000000000000000 (#317)
Use: Ether suffix, Time suffix, or The scientific notation

Additional information: link

name() should be declared external:
- (#327-329)
symbol() should be declared external:
- BEP20.symbol() (#335-337)
decimals() should be declared external:
- BEP20.decimals() (#353-355)
totalSupply() should be declared external:
- BEP20.totalSupply() (#360-362)
transfer(address,uint256) should be declared external:
- BEP20.transfer(address,uint256) (#379-382)
allowance(address,address) should be declared external:
- BEP20.allowance(address,address) (#387-389)
approve(address,uint256) should be declared external:
- BEP20.approve(address,uint256) (#398-401)
transferFrom(address,address,uint256) should be declared external:
- BEP20.transferFrom(address,address,uint256) (#415-419)
increaseAllowance(address,uint256) should be declared external:
- BEP20.increaseAllowance(address,uint256) (#433-436)
decreaseAllowance(address,uint256) should be declared external:
- BEP20.decreaseAllowance(address,uint256) (#452-455)
owner() should be declared external:
- Ownable.owner() (#581-583)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#600-603)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#609-613)
getInfoFor(address) should be declared external:
- BIRBToken.getInfoFor(address) (#731-743)
Use the external attribute for functions never called from the contract.

Additional information: link


Token is deployed only at one blockchain

Unable to find PancakeSwap trading pair to compute liquidity.

Unable to find PancakeSwap trading pair to compute number of swaps.

Last post in Twitter was more than 30 days ago

Unable to find Discord account

No disclosed threats

Young tokens have high risks of scam / price dump / death

Young tokens have high risks of price dump / death

Young tokens have high risks of price dump / death

Token has relatively low CoinGecko rank

Price for BIRB

News for BIRB