# Smart Contracts

The protocol follows a hub-and-spoke model for global state propagation. Users can initiate any action from any initiator chain, then data is routed to the hub via LayerZero v2 bridge messaging and replicated out via data availability.

## Mainnet Smart Contracts

<table><thead><tr><th width="163">Chain</th><th width="442">Address</th><th>Type</th></tr></thead><tbody><tr><td>Ethereum</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Hub</td></tr><tr><td>Arbitrum</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr><tr><td>Base</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr><tr><td>Optimism</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr><tr><td>Avalanche</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr><tr><td>Polygon</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr><tr><td>Binance Chain</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr><tr><td>Blast</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr></tbody></table>

## Testnet Smart Contracts

<table><thead><tr><th width="164">Chain</th><th width="430">Address</th><th>Type</th></tr></thead><tbody><tr><td>Sepolia</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Hub</td></tr><tr><td>Holesky</td><td>0x00000000000E1A99dDDd5610111884278BDBda1D</td><td>Initiator</td></tr></tbody></table>
