# Smart Contracts

### **Protocol Module**

{% embed url="<https://github.com/gordo-labs/songs-protocol/blob/main/contracts/protocol/NonUpgradable/ProtocolModule.sol>" %}

### **Distributor Smart Account Module**

{% embed url="<https://github.com/gordo-labs/songs-protocol/blob/main/contracts/protocol/NonUpgradable/DistributorWallet.sol>" %}

{% embed url="<https://github.com/gordo-labs/songs-protocol/blob/main/contracts/protocol/NonUpgradable/DistributorWalletFactory.sol>" %}

### **Wrapped Song Creator Module**

Public Opinionated Wrapped Song builder entry:

{% embed url="<https://github.com/gordo-labs/songs-protocol/blob/main/contracts/protocol/NonUpgradable/WrappedSongFactory.sol>" %}
Wrapped Song Factory
{% endembed %}

Smart Account Wrapped Song user owned layer:

{% embed url="<https://github.com/gordo-labs/songs-protocol/blob/main/contracts/protocol/NonUpgradable/WrappedSongSmartAccount.sol>" %}
Wrapped Song Smart Account
{% endembed %}

ERC-1155 base token layer, owned by the Wrapped Song Smart Account and owner of the NFT Release.

{% embed url="<https://github.com/gordo-labs/songs-protocol/blob/main/contracts/protocol/NonUpgradable/WSTokensManagement.sol>" %}
Wrapped Song Token Management
{% endembed %}

*Not using Create2 yet*

**Protocol v0.1 Contracts (Sepolia)**

```json
{
  "WhitelistingManager": "0xd49B56f72230B77BeedD7A05D37261C0Cd389f4a",
  "DistributorWalletFactory": "0x86839D2952A2A788cA679AD951eFE7B0124C029a",
  "ProtocolModule": "0xDF4B8DBD96D8db1e121A12C57AAF393f1c4B05C9",
  "WrappedSongFactory": "0x287780c0c3f69AAd00631339D504543DD66AD4A7",
}
```

**Protocol v0.1 Contracts (Polygon)**

```json
{
  "WhitelistingManager": "0x0CEECdA5612aB50b8234fca70aCE2149D436dcC7",
  "DistributorWalletFactory": "0x9a2855AD342d10F744558eeE3Ccb1f1C080d992F",
  "ProtocolModule": "0xE959F275433174cDdCA5EE8411a2e010Be95BCd1",
  "WrappedSongFactory": "0xb5d59C03AB3a5992074F71Ab1A3dFaee73050e1e",
}
```

**Protocol v0.1 Contracts (Base)**

```json
{
  "WhitelistingManager": "0xd49B56f72230B77BeedD7A05D37261C0Cd389f4a",
  "DistributorWalletFactory": "0x86839D2952A2A788cA679AD951eFE7B0124C029a",
  "ProtocolModule": "0xDF4B8DBD96D8db1e121A12C57AAF393f1c4B05C9",
  "WrappedSongFactory": "0x287780c0c3f69AAd00631339D504543DD66AD4A7",
}
```

**Protocol v0.1 Contracts (Optimism)**

```json
{
  "WhitelistingManager": "0xd49B56f72230B77BeedD7A05D37261C0Cd389f4a",
  "DistributorWalletFactory": "0x86839D2952A2A788cA679AD951eFE7B0124C029a",
  "ProtocolModule": "0xDF4B8DBD96D8db1e121A12C57AAF393f1c4B05C9",
  "WrappedSongFactory": "0x287780c0c3f69AAd00631339D504543DD66AD4A7",
}
```
