# Contract Directory

## 2.1 Contract Directory

This page lists all deployed contracts that compose the Modulexo system.

All addresses are publicly verifiable on-chain.

The directory is structured by network.

***

## I. Execution Networks

Each execution network includes:

* RecycleAssetRegistry
* SponsorshipLedger
* RecyclingEngine
* Fee Router
* (Optional) FeeVault

These contracts form the Recycle Execution Layer.

***

### Polygon (Chain ID: 137)

| Component            | Address | Role              | Owner | Governance       |
| -------------------- | ------- | ----------------- | ----- | ---------------- |
| RecyclingEngine      | 0x…     | Execution         | 0x…   | Owner / Timelock |
| SponsorshipLedger    | 0x…     | Unit Allocation   | 0x…   | Owner / Timelock |
| RecycleAssetRegistry | 0x…     | Asset Registry    | 0x…   | Owner / Timelock |
| Router               | 0x…     | Native Split      | 0x…   | Owner            |
| FeeVault             | 0x…     | Share Rail Buffer | 0x…   | Owner            |

***

### BNB Chain (Chain ID: 56)

| Component            | Address | Role              | Owner | Governance       |
| -------------------- | ------- | ----------------- | ----- | ---------------- |
| RecyclingEngine      | 0x…     | Execution         | 0x…   | Owner / Timelock |
| SponsorshipLedger    | 0x…     | Unit Allocation   | 0x…   | Owner / Timelock |
| RecycleAssetRegistry | 0x…     | Asset Registry    | 0x…   | Owner / Timelock |
| Router               | 0x…     | Native Split      | 0x…   | Owner            |
| FeeVault             | 0x…     | Share Rail Buffer | 0x…   | Owner            |

***

## II. Treasury Layer (Ethereum Mainnet)

Ethereum hosts the Fund and governance contracts.

***

### Ethereum (Chain ID: 1)

| Component         | Address | Role            | Owner    | Governance |
| ----------------- | ------- | --------------- | -------- | ---------- |
| Fund              | 0x…     | Treasury        | Timelock | DAO        |
| Weighted Governor | 0x…     | Proposal System | —        | —          |
| Timelock          | 0x…     | Execution Delay | —        | —          |

***

## III. Ownership State

Ownership must be verified directly on-chain via:

```
owner()
pendingOwner()
```

Possible states:

• Private Owner\
• Timelock Controlled\
• Renounced

If `owner()` equals Timelock address:

Private operator control has been removed.

If `owner()` equals zero address:

Contract is immutable and renounced.

***

## IV. Parameter Control

To verify parameter mutability:

RecyclingEngine:

```
baseWeightPriceWei()
decayPerDayPPM()
linearGrowthSlopeWeiPerDay()
```

Ledger:

```
engine()
```

Fund:

```
owner()
```

Any parameter changes emit events:

```
ParamsSet(...)
OwnershipTransferred(...)
```

***

## V. Deployment Metadata

Each contract exposes:

```
deployedAt()
```

or can be verified via deployment block on explorer.

Deployment block numbers should be included here for transparency.

Example:

| Contract                  | Deployment Block |
| ------------------------- | ---------------- |
| RecyclingEngine (Polygon) | 56,123,456       |
| Fund (Ethereum)           | 18,765,432       |

***

## VI. Contract Verification Standard

All listed contracts must be:

• Verified on block explorer\
• ABI available\
• Ownership state publicly readable

If a contract is upgradeable via proxy, the following must be listed:

• Proxy address\
• Implementation address\
• Admin address

This must be explicit.

***

## VII. Separation of Layers

Execution Layer (L2):\
Handles recycle mechanics.

Treasury Layer (L1):\
Handles governance and aggregated value.

These layers are independent but optionally connected via FeeVault + BridgeAdapter.
