Project Futurama - Smart Contract Audit Report

Summary

Project Futurama Audit Report Project Futurama ($Futurama) is a new community-driven DeFi token on the Ethereum Blockchain that pays out static token rewards to holders and sends ETH to the team.

Project Futurama's Token contract is deployed at 0x09402a1cdf6500f92cfdebce34ecc96ca19dc8ec on the Ethereum mainnet.

Notes on the Contract:
  • The total supply of the token is set to one hundred trillion $Futurama [100,000,000,000,000].
  • No minting or burn functions are present; however, holders can send tokens to the 0x...dead address if desired.
  • At the time of writing this report, 54.65% of the token's supply has been sent to the 0x...dead address.
  • The top five holders own a cumulative 9% of the total supply.
  • 5.79% of the total supply is in Uniswap liquidity.
  • Of that liquidity, 88.12% of the LP tokens are locked in a Token locking contract and will vest to the team on September 28, 2022.
  • There is a holder that is in possession of 10.99% of the LP tokens.

  • There is a 2% 'tax fee' and a 8% 'team fee' on all transactions for any address that participates in a transfer.
  • Users who hold tokens will automatically benefit from the frictionless fee redistribution at the time of each transaction as the tokens collected through taxes are removed from the circulating supply.
  • The team fee charged on transactions is swapped for ETH and sent to the contract address. The received ETH is then transferred in a 50%-50% split between the team's first wallet and second wallet (which is set to the same address).
  • The team wallet can call the Manualswap() and Manualsend() functions at any time which swaps $Futurama tokens for ETH, stores that ETH in the contract address, then sends it to the team wallet.
  • Ownership has been renounced.
  • There is logic in the code for a bot protection feature, however since ownership has been renounced this feature can no longer be utilized.
  • As the project is implemented with Solidity v0.8.4, it is protected from overflows.
Audit Findings Summary
  • No external threats were identified.
  • Please ensure trust in the team prior to investing as they have control over the ETH collected from the team fee.
  • Date: October 4th, 2021

Audit Results

Vulnerability CategoryNotesResult
Arbitrary Storage WriteN/APASS
Arbitrary JumpN/APASS
Delegate Call to Untrusted ContractN/APASS
Dependence on Predictable VariablesN/APASS
Deprecated OpcodesN/APASS
Ether ThiefN/APASS
ExceptionsN/APASS
External CallsN/APASS
Flash LoansN/APASS
Integer Over/UnderflowN/APASS
Multiple SendsN/APASS
OraclesN/APASS
SuicideN/APASS
State Change External CallsN/APASS
Unchecked RetvalN/APASS
User Supplied AssertionN/APASS
Critical Solidity CompilerN/APASS
Overall Contract Safety PASS

Function Graph

ERC20 Token Graph


Inheritence Chart

Multi-file Token


Functions Overview


 ($) = payable function
 # = non-constant function
 
 +  Context 
    - [Int] _msgSender

 + [Int] IERC20 
    - [Ext] totalSupply
    - [Ext] balanceOf
    - [Ext] transfer #
    - [Ext] allowance
    - [Ext] approve #
    - [Ext] transferFrom #

 + [Lib] SafeMath 
    - [Int] add
    - [Int] sub
    - [Int] sub
    - [Int] mul
    - [Int] div
    - [Int] div

 +  Ownable (Context)
    - [Pub]  #
    - [Pub] owner
    - [Pub] renounceOwnership #
       - modifiers: onlyOwner

 + [Int] IUniswapV2Factory 
    - [Ext] createPair #

 + [Int] IUniswapV2Router02 
    - [Ext] swapExactTokensForETHSupportingFeeOnTransferTokens #
    - [Ext] factory
    - [Ext] WETH
    - [Ext] addLiquidityETH ($)

 +  Futurama (Context, IERC20, Ownable)
    - [Pub]  #
    - [Pub] name
    - [Pub] symbol
    - [Pub] decimals
    - [Pub] totalSupply
    - [Pub] balanceOf
    - [Pub] transfer #
    - [Pub] allowance
    - [Pub] approve #
    - [Pub] transferFrom #
    - [Ext] setCooldownEnabled #
       - modifiers: onlyOwner
    - [Prv] tokenFromReflection
    - [Prv] _approve #
    - [Prv] _transfer #
    - [Prv] swapTokensForEth #
       - modifiers: lockTheSwap
    - [Prv] sendETHToFee #
    - [Ext] openSwapTrading #
       - modifiers: onlyOwner
    - [Ext] setSwapEnabled #
       - modifiers: onlyOwner
    - [Pub] setBots #
       - modifiers: onlyOwner
    - [Pub] delBot #
       - modifiers: onlyOwner
    - [Prv] _tokenTransfer #
    - [Prv] _transferStandard #
    - [Prv] _takeTeam #
    - [Prv] _reflectFee #
    - [Ext]  ($)
    - [Ext] manualswap #
    - [Ext] manualsend #
    - [Prv] _getValues
    - [Prv] _getTValues
    - [Prv] _getRValues
    - [Prv] _getRate
    - [Prv] _getCurrentSupply