Smart Contract Overview

NVG8Token.sol

Address: 0x3eaE98A7984794A99AcC550A197039ABf4C6c9D5
Polygonscan Link: https://polygonscan.com/address/0x3eae98a7984794a99acc550a197039abf4c6c9d5
Description: This contract implements OpenZepplin’s (OZ) ERC20 template and inherits OZ’s Access Control and ERC20Burnable contracts. The contract was used to:
  • Mint the full NVG8 token supply (fixed at 1B). Further minting of NVG8 tokens is impossible as the _mint method is internal and only called once when the contract is deployed.
  • Transfer this supply to the Navigate General wallet (a 3/5 mult-sig; address: 0x01984a191C4CaD54FAC43305513e0bB45E12e571); a portion of this supply was subsequently transferred into:
    • A vesting contract (see below contract): this manages the vesting schedule for investors, advisors, the team, and the Foundation
    • The Foundation’s wallet (a 3/5 multi-sig; address: 0xbB0700EDae593164e29423C4Ef86572af2eF352c): this supply will be used exclusively for growing the ecosystem through grants, liquidity provisioning, user rewards, and more.
    • The tokens remaining in the Navigate General wallet reflect unallocated amounts for team members and advisors, as well as 20M tokens reserved for a public sale and the lions’ share of user rewards (120M), which are pushed to a separate user reward wallet on a consistent basis (based on ongoing contributor activity).
  • And grant the Foundation the admin DEFAULT_ADMIN_ROLE, ADMIN_ROLE, AND TRANSFER_ROLE
The TRANSFER_ROLE exists, temporarily, to enable the Foundation to distribute rewards and establish vesting schedules while the token is non-transferable. Following the initial token offering, the TRANSFER_ROLE will not provide any additional benefits, as anyone with the token will be able to call the _transfer method.
This contract is also used to manage initial token transferability. As mentioned in the tokenomics section, NVG8 will be non-transferable until our initial token offering. At that time, tokens will become transferable, and the ADMIN_ROLE and DEFAULT_ADMIN_ROLE will be relinquished. Once this is complete, further transferability toggling will be impossible through setTransfersEnabled; this will be done by calling the revokeRole method.

TokenVesting.sol

Address: 0x58C58cd877510A66c62da16dcDc784C27A0d919a
Polygonscan Link: https://polygonscan.com/address/0x58c58cd877510a66c62da16dcdc784c27a0d919a
Description: This contract manages the vesting schedules for Navigate’s backers, advisors, team members, and Foundation. For more information on stakeholder vesting schedules, check out the vesting table outlined here. While the foundation has the ability to revoke investor vesting schedules (as an added layer of security), the Foundation’s vesting schedule is non-revocable.

Smart Contract Audit

Between August 24 and September 15, CertiK reviewed and formally verified Navigate’s smart contracts. CertiK employed both a manual review and static analysis to unearth any vulnerabilities in the source code as well as any contract dependencies that were not part of an officially recognized library. You can find CertiK's formal audit report here.