# Vault Factory

## **View Functions**

```
/// @notice the number of ERC721 vaults
uint256 public vaultCount;
```

```
  /// @notice the mapping of vault number to vault contract
  mapping(uint256 => TokenVault) public vaults;
```

```
  /// @notice a settings contract controlled by governance
  address public settings;
```

## **Fractionalizing An NFT**

When calling `mint` you must have `approved` the vault contract&#x20;

```
function mint(string memory _name, string memory _symbol, address _token, uint256 _id, uint256 _supply, uint256 _listPrice, uint256 _fee) external returns(uint256)
```

* **name**: the name of the ERC20 token which will represent the fractional ownership of your locked up NFT
* **symbol**: the token symbol of the ERC20 token
* **token**: the ethereum address of the NFT which you are fractionalizing
* **id**: the unique identifier used for your NFT in its respective smart contract
* **supply**: the desired total supply of the ERC20 token
* **listPrice**: the desired reserve price at the start of the fractional ownership
* **fee**: the curator fee which will be paid to the owner of the fractional asset


---

# Agent Instructions: 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://fractional.gitbook.io/fractional/smart-contract-breakdown/vault-factory.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.
