> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usenautilius.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Deploy on Coston2

> Resolve official dependencies and deploy the Nautilius v0.1 contract and FCC registration topology.

Do not deploy until you have a funded Coston2 account, an accessible FCC proxy/indexer, a public extension endpoint, and authorization to register an extension or TEE. Never place a private key in source, shell history, screenshots, or logs.

## Current verified snapshot

The existing Coston2 deployment was verified on 2026-08-14:

* `LandDeal`: `0xd0Ba79C80B12fcfd72851FE7ffe08Fd8885C8bf9`
* v0.1 `SilentLotInstructionSender`: `0xBC39A95F2CD04B3cfF0cD47Aed8596573f731f57`
* public FCC extension: `66252` (`0x102cc`)
* deployer and extension owner: `0x062DEB7b312462202071C6cf366E0471b426cd17`

The registry sender, owner allowlists, EVM key support, and contract backlinks were read back successfully. The extension currently has no active TEE or supported production code hash. Review [deployed v0.1 identifiers](/reference/deployed-v0-1) before making a live claim.

## Resolve official dependencies

```bash theme={null}
RPC=https://coston2-api.flare.network/ext/C/rpc
REG=0xaD67FE66660Fb8dFE9d6b1b4240d8650e30F6019

cast chain-id --rpc-url "$RPC"
cast call "$REG" 'getContractAddressByName(string)(address)' AssetManagerFXRP --rpc-url "$RPC"
cast call 0xc1Ca88b937d0b528842F95d5731ffB586f4fbDFA 'fAsset()(address)' --rpc-url "$RPC"
```

The dated expected values are chain `114`, AssetManager `0xc1Ca…bDFA`, and FTestXRP `0x0b6A…3dc7`. Re-resolve them immediately before deployment.

## Build the artifacts

```bash theme={null}
forge fmt --check
forge test
./scripts/generate-bindings.sh
cd tools
go test ./...
go build ./...
```

## Deploy the v0.1 topology

<Steps>
  <Step title="Deploy LandDeal">
    ```bash theme={null}
    cd tools
    go run ./cmd/deploy-land-deal \
      -a ../config/coston2/deployed-addresses.json \
      -c "$RPC" \
      -fxrp 0x0b6A3645c240605887a5532109323A3E12273dc7 \
      -o ../config/land-deal.address
    ```
  </Step>

  <Step title="Deploy and connect the instruction sender">
    Deploy the v0.1 sender with the official FlareTeeManager and the new LandDeal address. Initialize the LandDeal backlink once.
  </Step>

  <Step title="Register the extension">
    Register the extension through `TeeExtensionRegistry` using the real public URL. Call the one-shot `setExtensionId()` only after registration; it cannot be used to silently rebind an existing deployment.
  </Step>

  <Step title="Verify the topology">
    Read the sender, owner, key support, contract backlinks, code, and `getActiveTeeMachines(extensionId)`. Preserve every successful receipt.
  </Step>
</Steps>

The tooling and web client calculate FCC instruction fees live with `calculateFeeByTeeIds`; they do not treat a fixed fee as current.

Next, [verify production attestation](/build/verify-attestation) before sending confidential instructions.
