TINKU - Smart Contract Audit Report


TINKU Audit Report TINKU is a new DeFi project that automatically provides rewards to users who hold the token via frictionless fee redistribution.

TINKU is deployed at 0x47FA4B26c1c52Bc35654F98D10Cd61b9f3E10267 on the Ethereum Mainnet.

Notes on the Contract:
  • TINKU's code implements and builds upon the fee-redistribution features pioneered by Reflect Finance.
  • The total supply of the token is 100,000,000,000,000,000 TINKU.
  • No mint or burn functions exist, and tokens cannot be transferred to the burn address. However, the team sent 49.5% of the total supply to the contract address so the tokens are permanently stuck. This is often used as a deflationary mechanism.

  • At the time of writing this report, 49.75% of the tokens are in the token contract address.
  • There is a 1% fee that is redistributed to existing token holders instantly and automatically at the time of each transaction. Since the contract address participates as a normal holder, it will increasingly be distributed to the contract address as it continues to surpass 50%.
  • 7.77% of the supply is in Uniswap liquidity.
  • 98.4% of the current liquidity is set to unlock on September 1st, 2021.
  • The next largest wallet (after Uniswap) contains 2.22% of the total TINKU supply.
  • There is no maximum number of tokens that can be sent in a transaction.
  • Some gas optimizations can be achieved through declaring functions external instead of public and some variables constant. As this contract is already deployed, this is merely informational.
  • The team utilizes SafeMath to prevent overflows.
  • Ownership has been renounced.

Audit Findings Summary
  • No external threats were identified.
  • As with any token, please ensure trust in the team prior to investing.
  • Date: June 6th, 2021

Audit Results

Vulnerability Category Notes Result
Arbitrary Storage Write N/A PASS
Arbitrary Jump N/A PASS
Delegate Call to Untrusted Contract N/A PASS
Dependence on Predictable Variables N/A PASS
Deprecated Opcodes N/A PASS
Ether Thief N/A PASS
Exceptions N/A PASS
External Calls N/A PASS
Flash Loans N/A PASS
Integer Over/Underflow N/A PASS
Multiple Sends N/A PASS
Oracles N/A PASS
Suicide N/A PASS
State Change External Calls N/A PASS
Unchecked Retval N/A PASS
User Supplied Assertion N/A PASS
Critical Solidity Compiler N/A PASS
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] _msgData

 + [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
    - [Int] mod
    - [Int] mod

 + [Lib] Address 
    - [Int] isContract
    - [Int] sendValue #
    - [Int] functionCall #
    - [Int] functionCall #
    - [Int] functionCallWithValue #
    - [Int] functionCallWithValue #
    - [Prv] _functionCallWithValue #

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

 +  TINKU (Context, IERC20, Ownable)
    - [Pub]  #
    - [Pub] name
    - [Pub] symbol
    - [Pub] decimals
    - [Pub] totalSupply
    - [Pub] balanceOf
    - [Pub] transfer #
    - [Pub] allowance
    - [Pub] approve #
    - [Pub] transferFrom #
    - [Pub] increaseAllowance #
    - [Pub] decreaseAllowance #
    - [Pub] isExcluded
    - [Pub] totalFees
    - [Pub] reflect #
    - [Pub] reflectionFromToken
    - [Pub] tokenFromReflection
    - [Ext] excludeAccount #
       - modifiers: onlyOwner
    - [Ext] includeAccount #
       - modifiers: onlyOwner
    - [Prv] _approve #
    - [Prv] _transfer #
    - [Prv] _transferStandard #
    - [Prv] _transferToExcluded #
    - [Prv] _transferFromExcluded #
    - [Prv] _transferBothExcluded #
    - [Prv] _reflectFee #
    - [Prv] _getValues
    - [Prv] _getTValues
    - [Prv] _getRValues
    - [Prv] _getRate
    - [Prv] _getCurrentSupply