> For the complete documentation index, see [llms.txt](https://mujahid.gitbook.io/nounshards/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mujahid.gitbook.io/nounshards/flowchart.md).

# FLOWCHART

Terminologies:

1. tNoun: Tokenized Noun Contract(ERC721-tNouns)
2. fNoun: Fractional Noun Contract(ERC1155-fNouns)

Basic Flowchart:

<figure><img src="/files/8iSN5bv2qkn3TZnV1aDw" alt=""><figcaption><p>Basic Flowchart</p></figcaption></figure>

Flowchart:

<figure><img src="/files/AS0WlCubHUO8X28yD2Cr" alt=""><figcaption><p>User Flow</p></figcaption></figure>

## User Interactions with Noun Contract

1. **Options for Noun Holders:**
   1. **Borrow Base for at least 1 year.**
   2. **Tokenize the Noun for community members.**
   3. **Fractionalize the Noun into up to 250 fractional Nouns (fNouns).**

**Note:** All contracts use the same token IDs for tNoun (ERC721) and fNoun (ERC1155) as the original Noun. This ensures a unique and seamless experience without confusion.

## User Interaction with Noun & EAS Resolver Contracts

1. **Tokenizing a Noun:**
   1. **Approval:** User approves the tNoun Contract for secure transfer.
   2. **Tokenization:**
      * The user interacts with the tNoun Contract to tokenize the Noun.
      * Upon approval, the user receives a tNoun (ERC721 token) for reference.
      * The NounShards use the Ethereum Attestation Service (EAS) to attest data on the Base chain, ensuring full on-chain data.
      * Before attesting, the user sets limits for Fractional Nouns:
        * Price per fNoun.
        * End timestamp.
        * Number of sub-nouns (up to 250).
        * Required schema details on Base.

## **Interaction with the Resolver Contract:**

1. **Approval & Attestation:**
   * After approval and attestation, the Noun is locked with the tNoun Contract for at least 1 year.
   * The user is minted a tNoun token for future reference and a part of the fNoun token.
2. **Token Minting:**
   * The user receives two tokens: tNoun (transferrable) and fNoun (non-transferrable, similar to Soul-Bound Tokens).

## Other Users Interacting with fNoun Contract

**Purchasing fNoun Tokens:**

1. **Buying fNouns:**
   * Users can buy fNoun tokens by paying the amount defined by the tNoun holder. These fNouns are Soul-Bound Tokens(non-transferrable) for Community Engagement.
   * The limit is set by the Noun holder (e.g., if the Noun is divided into 10 parts, only 10 fNouns can be purchased).
2. **Minting fNouns:**
   * Users who pay with Base receive fNoun tokens, which contribute to community growth.
   * Users know the expiration of their fNoun and can reclaim 50% to 80% of their deposited amount.

**tNoun Holder Withdrawals:**

1. **Utilizing End Timestamps:**
   * The tNoun Contract uses the end timestamp of fNouns for withdrawals.
   * Users pay Base, collected from fNoun mintings.
2. **Token Burning:**
   * tNoun and fNouns are burned, and up to 80% of Base is distributed to fNoun holders (20% is used for application fees).

#### Noun Withdrawal

**Process:**

1. **Burning Tokens:**
   * After burning tNoun and fNoun tokens, the actual Noun is transferred to the tNoun owner.
2. **Unlocking Noun:**
   * The Noun is unlocked and transferred to the user.
   * The tNoun Contract uses the actual Noun Contract for a successful transfer.

#### Summary

This entire flow is fully on-chain, utilizing the Ethereum Attestation Service (EAS), Coinbase on-chain verifications, and the Noun, tNoun, and fNoun Contracts to ensure smooth and secure operations.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mujahid.gitbook.io/nounshards/flowchart.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
