From 32f89fa8d52e5579652d89d04d0d08c349dbdfb1 Mon Sep 17 00:00:00 2001 From: Dorian Date: Tue, 17 Mar 2026 00:03:08 +0000 Subject: [PATCH] backup commit --- .claude/memory/feedback_local_dev.md | 15 + .claude/plans/luminous-snacking-snowflake.md | 247 ++ .claude/plans/polished-napping-squid.md | 108 + .claude/skills/mesh/SKILL.md | 155 ++ core/Cargo.lock | 332 ++- core/archipelago/Cargo.toml | 8 + core/archipelago/src/api/handler.rs | 32 + core/archipelago/src/api/rpc/lnd.rs | 45 + core/archipelago/src/api/rpc/mesh.rs | 137 +- core/archipelago/src/api/rpc/mod.rs | 33 +- core/archipelago/src/api/rpc/transport.rs | 139 + core/archipelago/src/electrs_status.rs | 14 + core/archipelago/src/identity.rs | 5 + core/archipelago/src/main.rs | 1 + core/archipelago/src/mesh.rs | 265 -- core/archipelago/src/mesh/crypto.rs | 217 ++ core/archipelago/src/mesh/listener.rs | 656 +++++ core/archipelago/src/mesh/mod.rs | 401 +++ core/archipelago/src/mesh/protocol.rs | 661 +++++ core/archipelago/src/mesh/serial.rs | 378 +++ core/archipelago/src/mesh/types.rs | 114 + core/archipelago/src/server.rs | 74 + core/archipelago/src/transport/chunking.rs | 408 +++ core/archipelago/src/transport/delta.rs | 399 +++ core/archipelago/src/transport/lan.rs | 170 ++ .../src/transport/mesh_transport.rs | 114 + core/archipelago/src/transport/mod.rs | 568 ++++ core/archipelago/src/transport/tor.rs | 102 + docker/lnd-ui/bg-intro.jpg | Bin 0 -> 1077586 bytes docker/lnd-ui/nginx.conf | 7 + docker/lnd-ui/qrcode.js | 2297 +++++++++++++++++ image-recipe/configs/nginx-archipelago.conf | 14 + indeedhub-demo/Dockerfile | 2 +- loop/plan.md | 30 +- loops/plan.md | 109 + neode-ui/dev-dist/sw.js | 2 +- neode-ui/mock-backend.js | 230 ++ neode-ui/public/assets/img/bg-mesh.jpg | Bin 0 -> 5800774 bytes neode-ui/src/router/index.ts | 5 + neode-ui/src/stores/mesh.ts | 189 ++ neode-ui/src/stores/transport.ts | 113 + neode-ui/src/views/Dashboard.vue | 10 + neode-ui/src/views/Mesh.vue | 1016 ++++++++ 43 files changed, 9514 insertions(+), 308 deletions(-) create mode 100644 .claude/memory/feedback_local_dev.md create mode 100644 .claude/plans/luminous-snacking-snowflake.md create mode 100644 .claude/plans/polished-napping-squid.md create mode 100644 .claude/skills/mesh/SKILL.md create mode 100644 core/archipelago/src/api/rpc/transport.rs delete mode 100644 core/archipelago/src/mesh.rs create mode 100644 core/archipelago/src/mesh/crypto.rs create mode 100644 core/archipelago/src/mesh/listener.rs create mode 100644 core/archipelago/src/mesh/mod.rs create mode 100644 core/archipelago/src/mesh/protocol.rs create mode 100644 core/archipelago/src/mesh/serial.rs create mode 100644 core/archipelago/src/mesh/types.rs create mode 100644 core/archipelago/src/transport/chunking.rs create mode 100644 core/archipelago/src/transport/delta.rs create mode 100644 core/archipelago/src/transport/lan.rs create mode 100644 core/archipelago/src/transport/mesh_transport.rs create mode 100644 core/archipelago/src/transport/mod.rs create mode 100644 core/archipelago/src/transport/tor.rs create mode 100644 docker/lnd-ui/bg-intro.jpg create mode 100644 docker/lnd-ui/qrcode.js create mode 100644 loops/plan.md create mode 100644 neode-ui/public/assets/img/bg-mesh.jpg create mode 100644 neode-ui/src/stores/mesh.ts create mode 100644 neode-ui/src/stores/transport.ts create mode 100644 neode-ui/src/views/Mesh.vue diff --git a/.claude/memory/feedback_local_dev.md b/.claude/memory/feedback_local_dev.md new file mode 100644 index 00000000..8f4e4bf7 --- /dev/null +++ b/.claude/memory/feedback_local_dev.md @@ -0,0 +1,15 @@ +--- +name: Local Frontend Dev Workflow +description: How to start the local frontend dev environment — use start-dev.sh from neode-ui/, NOT npm start from root +type: feedback +--- + +Run local frontend dev from `neode-ui/` directory: `./start-dev.sh` (NOT `npm start` from project root — there's no root package.json). + +**Why:** The project root has no package.json. Running `npm start` there fails with ENOENT. The frontend dev script lives in `neode-ui/start-dev.sh`. + +**How to apply:** +- `cd neode-ui && ./start-dev.sh` — clears ports, starts Docker apps, runs `npm run dev:mock` (mock backend on :5959, Vite on :8100) +- Stop with `./stop-dev.sh` or Ctrl+C +- Login password in dev mode: `password123` +- When telling the user how to test locally, always reference `cd neode-ui && ./start-dev.sh` diff --git a/.claude/plans/luminous-snacking-snowflake.md b/.claude/plans/luminous-snacking-snowflake.md new file mode 100644 index 00000000..e5e0327c --- /dev/null +++ b/.claude/plans/luminous-snacking-snowflake.md @@ -0,0 +1,247 @@ +# Phase 2: Mesh as Federation Transport + +## Context + +Phase 1 built three independent communication silos: Tor-HTTP for federation, Meshcore LoRa for offline mesh, Nostr relays for discovery. They share no common abstraction — federation hardcodes Tor SOCKS5, mesh has its own serial listener, peer messaging uses a separate HTTP POST. Adding a new transport (LAN/mDNS) or changing routing logic means touching every caller. + +Phase 2 unifies these under a `NodeTransport` trait with automatic transport selection per peer (Mesh > LAN > Tor), chunked LoRa messaging with Reed-Solomon FEC for payloads >160 bytes, CBOR delta compression for state sync, mDNS LAN discovery, and a "mesh only" off-grid mode. + +The v2.0 roadmap (`docs/roadmap-v2.0.md`) also calls for a visual topology map and CRDT-based state sync — those are deferred to Phase 5 (Mesh Intelligence), but the transport abstraction here enables them. + +## Dependencies (Verified) + +```toml +ciborium = "0.2.2" # CBOR serde (134M downloads, active) +reed-solomon-erasure = "6.0" # FEC (4M downloads, MIT) +mdns-sd = "0.18.2" # LAN peer discovery (1.86M, active) +``` + +## Architecture + +``` +core/archipelago/src/transport/ +├── mod.rs — NodeTransport trait, TransportKind, TransportRouter, PeerRegistry +├── tor.rs — TorTransport (wraps node_message.rs SOCKS5 logic) +├── mesh_transport.rs — MeshTransport (bridges MeshService cmd channel) +├── lan.rs — LanTransport (mdns-sd + direct HTTP) +├── chunking.rs — Split/reassemble with Reed-Solomon FEC +└── delta.rs — CBOR delta encoding for NodeStateSnapshot +``` + +### Unified Peer Identity + +DID is the canonical identifier. Transport-specific addresses are attributes: + +```rust +pub struct PeerRecord { + pub did: String, + pub pubkey_hex: String, + pub name: Option, + pub trust_level: TrustLevel, + // Transport capabilities + pub mesh_contact_id: Option, + pub lan_address: Option, + pub onion_address: Option, + // Freshness + pub last_mesh: Option, + pub last_lan: Option, + pub last_tor: Option, +} +``` + +### Transport Routing + +``` +TransportRouter::send_to_peer(did, payload) + 1. Look up PeerRecord by DID + 2. Filter to transports where peer has address AND transport is available AND not stale + 3. Sort by priority: Mesh(1) > LAN(2) > Tor(3) + 4. If mesh_only_mode: only allow Mesh + 5. Try each in order, fall back on failure +``` + +### Chunking Protocol (for LoRa >160B) + +Per-chunk structure (8 byte header + 124 byte payload = 132B, fits in 160B after encryption): +``` +[0x01] [msg_id: u32 LE] [chunk_idx: u8] [total: u8] [is_parity: u8] [payload: 124B] +``` + +Reed-Solomon: 25% parity shards. 4 data chunks = 1 parity chunk. Any N-of-(N+parity) reconstructs. +Max practical: ~10 chunks (~1.2KB) before LoRa airtime becomes unreasonable. + +### CBOR Delta Sync + +Full JSON state: ~500-2000 bytes. CBOR delta when only CPU/mem changed: ~30-50 bytes. Fits single LoRa chunk. + +```rust +pub struct StateDelta { + pub ts: String, + pub v: u8, + pub apps: Option>, // Only changed apps + pub apps_rm: Option>, // Removed app IDs + pub cpu: Option, + pub mem_u: Option, + // ... only changed fields, short names for wire size +} +``` + +## Implementation Steps + +### Step 1: Add deps to Cargo.toml +**File**: `core/archipelago/Cargo.toml` +Add ciborium, reed-solomon-erasure, mdns-sd. + +### Step 2: Create `transport/mod.rs` — Core trait + PeerRegistry + TransportRouter +**New file**: `core/archipelago/src/transport/mod.rs` +- `NodeTransport` trait: `kind()`, `is_available()`, `send(address, payload)` +- `TransportKind` enum: `Mesh = 1, Lan = 2, Tor = 3` +- `TransportMessage`: `{from_did, payload: Vec, message_type}` +- `PeerRegistry`: unified peer store (DID -> PeerRecord), JSON persistence to `transport-peers.json` +- `TransportRouter`: holds Vec>, routes by priority with fallback +- Register `mod transport;` in `core/archipelago/src/lib.rs` or main.rs + +### Step 3: Create `transport/chunking.rs` — Reed-Solomon FEC +**New file**: `core/archipelago/src/transport/chunking.rs` +- `encode_chunked(data: &[u8]) -> Vec>` — split + FEC parity shards +- `ChunkReassembler` — state machine tracking pending messages, attempts reconstruction when enough chunks arrive +- `decode_chunked(chunks: &[Option>]) -> Result>` — reconstruct from data+parity +- Unit tests: roundtrip, missing chunks, corrupted chunks + +### Step 4: Create `transport/delta.rs` — CBOR delta sync +**New file**: `core/archipelago/src/transport/delta.rs` +- `compute_delta(prev, curr: &NodeStateSnapshot) -> StateDelta` +- `apply_delta(base: &NodeStateSnapshot, delta: &StateDelta) -> NodeStateSnapshot` +- `encode_cbor(delta) -> Vec` via ciborium +- `decode_cbor(bytes) -> Result` +- Unit tests: delta correctness, CBOR roundtrip, size comparison vs JSON + +### Step 5: Create `transport/tor.rs` — TorTransport +**New file**: `core/archipelago/src/transport/tor.rs` +- Wraps existing `node_message::send_to_peer()` pattern (reqwest + SOCKS5) +- Reuses: `node_message.rs:66` send logic, `node_message.rs:115` health check +- `is_available()` checks SOCKS5 proxy reachable at 127.0.0.1:9050 +- Receives handled by existing HTTP handler in `api/handler.rs` + +### Step 6: Create `transport/mesh_transport.rs` — MeshTransport +**New file**: `core/archipelago/src/transport/mesh_transport.rs` +- Holds reference to `Arc>>` (same as RpcHandler) +- `send()` routes through `MeshService::send_message()` for small payloads +- For payloads >124B: chunk with `chunking::encode_chunked()`, send each chunk via `MeshCommand::SendText` +- 200ms inter-chunk delay for LoRa airtime fairness +- `is_available()` checks mesh device connected via `MeshService::status()` + +### Step 7: Create `transport/lan.rs` — LanTransport +**New file**: `core/archipelago/src/transport/lan.rs` +- Uses `mdns-sd::ServiceDaemon` for discovery +- Advertises: `_archipelago._tcp.local.` with TXT records: `did=..., pubkey=..., version=...` +- Browses for peers, updates PeerRegistry when found +- `send()`: direct HTTP POST to `http://{ip}:5678/archipelago/node-message` (same endpoint as Tor, no proxy) +- Non-blocking init — if Avahi not available, fail gracefully + +### Step 8: Add `mesh_only_mode` to MeshConfig +**File**: `core/archipelago/src/mesh/mod.rs` +- Add `pub mesh_only_mode: Option` to MeshConfig (with `#[serde(default)]`) +- TransportRouter reads this flag to restrict routing + +### Step 9: Wire TransportRouter into server.rs +**File**: `core/archipelago/src/server.rs` (~line 136, after mesh service init) +- Create PeerRegistry, load from disk +- Create TorTransport, MeshTransport, LanTransport +- Start LAN advertisement + discovery +- Create TransportRouter with all three + mesh_only flag +- Spawn background task bridging `MeshEvent::IdentityReceived` -> PeerRegistry +- Store router on RpcHandler + +### Step 10: Add transport RPC endpoints +**New file**: `core/archipelago/src/api/rpc/transport.rs` +**Modify**: `core/archipelago/src/api/rpc/mod.rs` (add dispatch routes) + +Endpoints: +- `transport.status` — available transports, mesh_only flag, peer count +- `transport.peers` — unified peer list with per-peer transport capabilities + preferred transport +- `transport.send` — send message via best transport (by DID) +- `transport.set-mode` — toggle mesh_only mode + +### Step 11: Add opt-in federation sync via transport +**File**: `core/archipelago/src/federation.rs` +- Add `sync_with_peer_via_transport()` alongside existing `sync_with_peer()` +- Uses CBOR delta encoding when transport is mesh (saves bandwidth) +- Falls back to full JSON over Tor for backward compat +- Background sync task checks for TransportRouter, uses it if available + +### Step 12: Frontend — transport store + UI indicators +**New file**: `neode-ui/src/stores/transport.ts` — Pinia store for transport status +**Modify**: `neode-ui/src/views/Mesh.vue` — "OFF-GRID" indicator when mesh_only mode +**Modify**: `neode-ui/mock-backend.js` — add transport.* mock RPC responses + +### Step 13: Mock backend transport data +**File**: `neode-ui/mock-backend.js` +Add `transport.status`, `transport.peers`, `transport.send`, `transport.set-mode` mock responses with realistic data showing mixed transport capabilities. + +## Files Summary + +### New (8) +1. `core/archipelago/src/transport/mod.rs` +2. `core/archipelago/src/transport/tor.rs` +3. `core/archipelago/src/transport/mesh_transport.rs` +4. `core/archipelago/src/transport/lan.rs` +5. `core/archipelago/src/transport/chunking.rs` +6. `core/archipelago/src/transport/delta.rs` +7. `core/archipelago/src/api/rpc/transport.rs` +8. `neode-ui/src/stores/transport.ts` + +### Modified (8) +1. `core/archipelago/Cargo.toml` — add 3 deps +2. `core/archipelago/src/lib.rs` or main — `mod transport;` +3. `core/archipelago/src/server.rs` — init router, bridge events +4. `core/archipelago/src/api/rpc/mod.rs` — dispatch + store router +5. `core/archipelago/src/mesh/mod.rs` — `mesh_only_mode` config field +6. `core/archipelago/src/federation.rs` — `sync_with_peer_via_transport()` +7. `neode-ui/src/views/Mesh.vue` — off-grid indicator +8. `neode-ui/mock-backend.js` — transport.* mock data + +### Reused Existing Code +- `node_message.rs:66-112` — Tor SOCKS5 send logic -> wrapped by TorTransport +- `node_message.rs:115-135` — Tor health check -> TorTransport.is_available() +- `mesh/mod.rs:209-282` — MeshService::send_message() -> called by MeshTransport +- `mesh/listener.rs:35-37` — MeshCommand channel -> used for chunked sends +- `mesh/crypto.rs` — X25519 ECDH + ChaCha20-Poly1305 -> reused as-is +- `federation.rs:36-49` — FederatedNode struct -> PeerRecord wraps this +- `federation.rs:179-191` — update_node_state() -> adapted for CBOR deltas + +## Verification + +1. **Unit tests** (run on dev server): + ```bash + cargo test --all-features -- transport + cargo test --all-features -- chunking + cargo test --all-features -- delta + ``` + +2. **Frontend type check**: + ```bash + cd neode-ui && npm run type-check + ``` + +3. **Dev mode test**: + ```bash + cd neode-ui && npm start + # Navigate to /dashboard/mesh — verify OFF-GRID toggle + ``` + +4. **Deploy + integration test**: + ```bash + ./scripts/deploy-to-target.sh --live + # On .228: curl transport.status RPC + # Verify mDNS advertises _archipelago._tcp.local. + # If mesh device connected: send chunked message >160B to .198 + # Verify federation sync uses CBOR delta when available + ``` + +## Implementation Order + +**Week 1**: Steps 1-4 (deps, trait, chunking, delta — pure library code with unit tests) +**Week 2**: Steps 5-7 (three transport implementations) +**Week 3**: Steps 8-11 (integration: server wiring, RPC, federation migration) +**Week 4**: Steps 12-13 (frontend UI, mock data, deploy + test) diff --git a/.claude/plans/polished-napping-squid.md b/.claude/plans/polished-napping-squid.md new file mode 100644 index 00000000..85d1a13d --- /dev/null +++ b/.claude/plans/polished-napping-squid.md @@ -0,0 +1,108 @@ +# Meshcore Mesh Networking — Phase 1 Implementation Plan + +## Context + +Adding mesh networking to Archipelago using Heltec V3 devices running Meshcore firmware (Companion USB). Two nodes (.228 and .198) will exchange encrypted identity and text messages over LoRa radio with no internet required. The existing `mesh.rs` wraps the Meshtastic CLI — this replaces it with a native Meshcore serial protocol driver. + +## Architecture + +Convert `mesh.rs` into `mesh/` module directory: + +``` +core/archipelago/src/mesh/ +├── mod.rs — Public API, MeshService, config (migrated from mesh.rs) +├── types.rs — MeshPeer, MeshMessage, MeshStatus, DeviceType +├── protocol.rs — Meshcore binary frame protocol (encode/decode/commands) +├── serial.rs — MeshcoreDevice: async serial driver (serial2-tokio) +├── crypto.rs — X25519 ECDH + ChaCha20-Poly1305 per-message encryption +└── listener.rs — Background tokio task: serial reader + message dispatcher +``` + +Frontend: +``` +neode-ui/src/stores/mesh.ts — Pinia store +neode-ui/src/views/Mesh.vue — Mesh status, peers, messaging UI +``` + +## Dependency + +Add to `core/archipelago/Cargo.toml`: +```toml +serial2-tokio = "0.1" +``` + +All crypto deps already present (chacha20poly1305, ed25519-dalek, curve25519-dalek). + +## Meshcore Protocol Summary + +- **Frame format**: `>` + 2-byte LE length + data (outbound), `<` + 2-byte LE length + data (inbound) +- **Baud**: 115200, 8N1 +- **Max message**: 160 bytes +- **Init sequence**: CMD_DEVICE_QUERY (0x16) -> CMD_APP_START (0x01) -> CMD_SET_DEVICE_TIME (0x06) +- **Key commands**: SEND_TXT_MSG (0x02), SEND_CHANNEL_TXT_MSG (0x03), GET_CONTACTS (0x04), SYNC_NEXT_MESSAGE (0x0A), SEND_SELF_ADVERT (0x07) +- **Push events** (async, >=0x80): NEW_CONTACT (0x8A), ACK (0x82), MESSAGES_WAITING (0x83) + +## Encryption Design + +Reuses existing identity.rs X25519 key agreement: +1. Nodes broadcast identity on mesh channel: `ARCHY:1:{did}:{ed25519_pubkey}:{x25519_pubkey}` +2. Receiving node derives shared secret: X25519(our_secret, their_x25519_pub) +3. All DMs encrypted: ChaCha20-Poly1305 with random 12-byte nonce +4. Wire format: [nonce 12B] + [ciphertext] + [tag 16B] — fits in 160B limit for ~130B plaintext + +## RPC Endpoints + +| Method | Action | +|--------|--------| +| `mesh.status` | Device + mesh status (updated) | +| `mesh.peers` | **NEW** — list discovered mesh peers | +| `mesh.messages` | **NEW** — get message history (last 100) | +| `mesh.send` | **NEW** — send encrypted message to peer | +| `mesh.broadcast` | Broadcast identity (updated for Meshcore) | +| `mesh.configure` | Update config (updated) | + +## Implementation Steps + +1. **Create mesh/ module, migrate existing code** — types.rs + mod.rs from mesh.rs +2. **protocol.rs** — Binary frame encode/decode, command builders, response parsers + unit tests +3. **crypto.rs** — X25519 ECDH + ChaCha20-Poly1305 encrypt/decrypt + unit tests +4. **serial.rs** — MeshcoreDevice with open/init/send/recv + device auto-detection +5. **listener.rs** — Background task: serial reader, peer cache, message store, reconnect +6. **mod.rs MeshService** — Wraps listener + config, start/stop lifecycle +7. **Update RPC handlers** — New endpoints, wire MeshService into RpcHandler +8. **Update RPC dispatch** — Add routes in mod.rs ~line 622 +9. **Frontend store + view** — mesh.ts Pinia store, Mesh.vue with glass-card UI, router + nav +10. **Deploy + test** — Deploy to .228 and .198, plug in Heltec V3s, test end-to-end + +## Key Files to Modify + +- `core/archipelago/src/mesh.rs` -> delete, replace with `mesh/` directory +- `core/archipelago/src/api/rpc/mesh.rs` — update handlers +- `core/archipelago/src/api/rpc/mod.rs` — add routes (~line 622) +- `core/archipelago/Cargo.toml` — add serial2-tokio +- `neode-ui/src/router/index.ts` — add /dashboard/mesh route +- `neode-ui/src/views/Dashboard.vue` — add Mesh nav item + +## Reusable Existing Code + +- `identity.rs` lines 140-152: Ed25519 -> X25519 conversion (CompressedEdwardsY -> Montgomery) +- `identity.rs` `pubkey_bytes_from_did_key()`: extract raw pubkey from DID string +- `node_message.rs` pattern: IncomingMessage store with max 100 circular buffer +- `mesh.rs` `MeshConfig` + `load_config`/`save_config`: migrate directly into mod.rs +- `mesh.rs` `detect_meshtastic_devices()`: keep as fallback, add Meshcore probe-based detection + +## Prerequisites + +- Flash both Heltec V3 with Meshcore **Companion USB** role +- Add `archipelago` user to `dialout` group: `usermod -aG dialout archipelago` +- Connect Heltec V3 to USB on .228 and .198 + +## Verification + +1. `cargo clippy --all-targets` passes with zero warnings +2. Unit tests pass: protocol encode/decode, crypto encrypt/decrypt roundtrip +3. Device detected on /dev/ttyUSB0 or /dev/ttyACM0 +4. Init handshake completes (visible in tracing logs) +5. Identity broadcast from .228, received on .198 +6. Encrypted DM sent .228 -> .198, decrypted and visible in UI +7. Mesh.vue shows device status, peer list, message history diff --git a/.claude/skills/mesh/SKILL.md b/.claude/skills/mesh/SKILL.md new file mode 100644 index 00000000..656f8e1d --- /dev/null +++ b/.claude/skills/mesh/SKILL.md @@ -0,0 +1,155 @@ +--- +name: mesh +description: Mesh networking development for Archipelago — protocol, crypto, serial driver, transport abstraction, and LoRa chat. Use when working on mesh radio, Meshcore protocol, LoRa messaging, transport layers, peer discovery, or off-grid communication features. +--- + +# Mesh Networking Skill + +## Architecture + +The mesh subsystem enables offline peer discovery and end-to-end encrypted messaging between Archipelago nodes via Meshcore LoRa radio devices (Heltec V3, T-Beam, RAK WisBlock). + +``` +USB Meshcore Device (115200 baud) + ↕ serial2-tokio +core/archipelago/src/mesh/ +├── mod.rs — MeshService: lifecycle, config, public API +├── types.rs — MeshPeer, MeshMessage, MeshStatus, MeshEvent +├── protocol.rs — Meshcore binary frame protocol (encode/decode) +├── serial.rs — MeshcoreDevice: async serial driver +├── crypto.rs — X25519 ECDH + ChaCha20-Poly1305 encryption +└── listener.rs — Background tokio task: serial reader + dispatcher + ↕ RPC +core/archipelago/src/api/rpc/mesh.rs — 6 endpoints + ↕ HTTP +neode-ui/src/stores/mesh.ts — Pinia store +neode-ui/src/views/Mesh.vue — Two-column chat UI +``` + +## Key Files + +### Backend (Rust) +- `core/archipelago/src/mesh/mod.rs` — MeshService (start/stop/status/peers/messages/send/configure) +- `core/archipelago/src/mesh/types.rs` — All shared types +- `core/archipelago/src/mesh/protocol.rs` — Binary frame format, command builders, response parsers (12 unit tests) +- `core/archipelago/src/mesh/serial.rs` — USB serial driver, handshake, device detection +- `core/archipelago/src/mesh/crypto.rs` — X25519 key agreement + ChaCha20-Poly1305 (7 unit tests) +- `core/archipelago/src/mesh/listener.rs` — Background event loop, auto-reconnect, peer cache +- `core/archipelago/src/api/rpc/mesh.rs` — RPC handlers (mesh.status/peers/messages/send/broadcast/configure) +- `core/archipelago/src/server.rs` — MeshService initialization (non-blocking) +- `core/archipelago/src/identity.rs` — Ed25519 keypair, DID, X25519 derivation + +### Frontend (Vue 3 + TypeScript) +- `neode-ui/src/stores/mesh.ts` — Pinia store with unread tracking +- `neode-ui/src/views/Mesh.vue` — Full chat UI (~1000 lines) +- `neode-ui/src/router/index.ts` — Route: `/dashboard/mesh` + +### Mock Backend +- `neode-ui/mock-backend.js` — Dev mode mesh RPC responses (mesh.status/peers/messages/send/broadcast/configure) + +## Protocol Reference + +### Meshcore Frame Format +- Outbound: `<` (0x3C) + 2-byte LE length + data +- Inbound: `>` (0x3E) + 2-byte LE length + data +- Max LoRa payload: 160 bytes +- Baud: 115200, 8N1 + +### Key Commands +| Byte | Command | Description | +|------|---------|-------------| +| 0x01 | APP_START | Init session with version negotiation | +| 0x02 | SEND_TXT_MSG | Direct message (6-byte pubkey prefix) | +| 0x03 | SEND_CHANNEL_TXT_MSG | Broadcast on channel | +| 0x04 | GET_CONTACTS | Fetch contact list | +| 0x06 | SET_DEVICE_TIME | Sync device clock | +| 0x07 | SEND_SELF_ADVERT | Broadcast identity | +| 0x0A | SYNC_NEXT_MESSAGE | Retrieve queued messages | + +### Identity Wire Format +`ARCHY:2:{ed25519_hex_64}:{x25519_hex_64}` (137 bytes, fits 160) + +### Encryption +- X25519 Diffie-Hellman from Ed25519 keys (RFC 7748 clamping) +- ChaCha20-Poly1305 AEAD with random 12-byte nonce +- Wire: `[nonce 12B] + [ciphertext + tag 16B]` — max 132B plaintext + +## RPC Endpoints + +| Method | Params | Returns | +|--------|--------|---------| +| `mesh.status` | — | MeshStatus | +| `mesh.peers` | — | `{peers, count}` | +| `mesh.messages` | `{limit?}` | `{messages, count}` | +| `mesh.send` | `{contact_id, message}` | `{sent, message_id, encrypted}` | +| `mesh.broadcast` | — | `{broadcast}` | +| `mesh.configure` | `{enabled?, device_path?, channel_name?, broadcast_identity?, advert_name?}` | `{configured}` | + +## Development Workflow + +### Building & Testing (on dev server, NOT macOS) +```bash +# Deploy mesh changes +./scripts/deploy-to-target.sh --live + +# Run mesh unit tests on server +ssh -i ~/.ssh/archipelago-deploy archipelago@192.168.1.228 \ + 'cd ~/archy/core && cargo test --all-features -- mesh' + +# Check device is detected +ssh -i ~/.ssh/archipelago-deploy archipelago@192.168.1.228 \ + 'ls -la /dev/ttyUSB* /dev/ttyACM* 2>/dev/null' + +# Watch mesh logs +ssh -i ~/.ssh/archipelago-deploy archipelago@192.168.1.228 \ + 'sudo journalctl -u archipelago -f | grep -i mesh' +``` + +### Frontend Dev (local, mock backend) +```bash +cd neode-ui && npm start +# Mesh mock data at http://localhost:8100/dashboard/mesh +``` + +## Roadmap Phases + +### Phase 1: Core Implementation (COMPLETE) +- Meshcore binary protocol, serial driver, crypto, listener, RPC, Vue UI + +### Phase 2: Mesh as Federation Transport +- NodeTransport trait abstraction (mesh/tor/lan backends) +- Transport priority: Mesh (1) > LAN/mDNS (2) > Tor (3) +- Chunked message protocol for >160B payloads (Reed-Solomon FEC) +- CBOR delta sync instead of full JSON state +- Transport indicator per peer in federation UI +- "Mesh only" off-grid mode +- Dependencies: `ciborium` (CBOR), `reed-solomon-erasure` (FEC), `mdns-sd` (LAN discovery) + +### Phase 3: Encrypted Mesh Messaging +- Double Ratchet (Signal protocol) over LoRa +- X3DH key agreement using existing Ed25519/X25519 +- Store-and-forward relay for offline peers (24h TTL) +- Message types: TEXT, ALERT, INVOICE (bolt11), PSBT_HASH, COORDINATE +- Per-peer chat threads, delivery status, offline indicators + +### Phase 4: Off-Grid Bitcoin Operations +- Compact block headers over mesh (SPV verification) +- Transaction relay via internet-connected mesh peer +- Lightning payment coordination over mesh +- Emergency alert system (signed alerts, GPS, dead man's switch) + +### Phase 5: Mesh Network Intelligence +- Adaptive routing, signal strength mapping, spreading factor adjustment +- Multi-path routing for reliability +- Steganographic modes +- Additional hardware: T-Beam, RAK WisBlock, WiFi mesh (802.11s), BLE, Blockstream Satellite + +## Conventions + +- All crypto uses existing identity infrastructure (Ed25519 signing key → X25519 derivation) +- Mesh init is non-blocking — errors logged but don't crash server +- Config persists to `{data_dir}/mesh-config.json` +- Message buffer: circular, max 100 messages +- Never build Rust on macOS — always deploy to server +- USB device paths: `/dev/ttyUSB*` and `/dev/ttyACM*` +- `archipelago` user must be in `dialout` group for serial access diff --git a/core/Cargo.lock b/core/Cargo.lock index 186a94f3..3964f96e 100644 --- a/core/Cargo.lock +++ b/core/Cargo.lock @@ -43,6 +43,17 @@ dependencies = [ "subtle", ] +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom 0.2.17", + "once_cell", + "version_check", +] + [[package]] name = "aho-corasick" version = "1.1.4" @@ -69,7 +80,7 @@ checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "archipelago" -version = "0.1.0" +version = "1.1.0" dependencies = [ "anyhow", "archipelago-container", @@ -80,27 +91,35 @@ dependencies = [ "base64 0.21.7", "bcrypt", "bs58", + "bytes", "chacha20poly1305", "chrono", + "ciborium", "curve25519-dalek", "data-encoding", "ed25519-dalek", "flate2", "futures-util", "hex", + "hmac", "http-body 1.0.1", "http-body-util", "hyper 0.14.32", "hyper-util", "hyper-ws-listener", + "mainline", + "mdns-sd", "nostr-sdk", "qrcode", "rand 0.8.5", + "reed-solomon-erasure", "regex", "reqwest", + "sd-notify", "serde", "serde_json", "serde_yaml", + "serial2-tokio", "sha2", "tar", "tempfile", @@ -115,6 +134,7 @@ dependencies = [ "tracing", "tracing-subscriber", "uuid", + "zbase32", "zeroize", ] @@ -483,6 +503,33 @@ dependencies = [ "windows-link", ] +[[package]] +name = "ciborium" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" + +[[package]] +name = "ciborium-ll" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +dependencies = [ + "ciborium-io", + "half", +] + [[package]] name = "cipher" version = "0.4.4" @@ -531,6 +578,21 @@ dependencies = [ "libc", ] +[[package]] +name = "crc" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5eb8a2a1cd12ab0d987a5d5e825195d372001a4094a0376319d5a0ad71c1ba0d" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + [[package]] name = "crc32fast" version = "1.5.0" @@ -540,6 +602,12 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "crunchy" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" + [[package]] name = "crypto-common" version = "0.1.7" @@ -733,6 +801,17 @@ dependencies = [ "miniz_oxide", ] +[[package]] +name = "flume" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095" +dependencies = [ + "futures-core", + "futures-sink", + "spin", +] + [[package]] name = "fnv" version = "1.0.7" @@ -932,6 +1011,26 @@ dependencies = [ "tracing", ] +[[package]] +name = "half" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" +dependencies = [ + "cfg-if", + "crunchy", + "zerocopy", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash", +] + [[package]] name = "hashbrown" version = "0.16.1" @@ -1272,6 +1371,16 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "if-addrs" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0a05c691e1fae256cf7013d99dad472dc52d5543322761f83ec8d47eab40d2b" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + [[package]] name = "image" version = "0.25.9" @@ -1291,7 +1400,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" dependencies = [ "equivalent", - "hashbrown", + "hashbrown 0.16.1", "serde", "serde_core", ] @@ -1363,6 +1472,12 @@ version = "0.2.180" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" +[[package]] +name = "libm" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" + [[package]] name = "libredox" version = "0.1.14" @@ -1402,12 +1517,47 @@ version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" +[[package]] +name = "lru" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" +dependencies = [ + "hashbrown 0.12.3", +] + +[[package]] +name = "lru" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" + [[package]] name = "lru" version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" +[[package]] +name = "mainline" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b751ffb57303217bcae8f490eee6044a5b40eadf6ca05ff476cad37e7b7970d" +dependencies = [ + "bytes", + "crc", + "ed25519-dalek", + "flume", + "lru 0.12.5", + "rand 0.8.5", + "serde", + "serde_bencode", + "serde_bytes", + "sha1_smol", + "thiserror 1.0.69", + "tracing", +] + [[package]] name = "matchers" version = "0.2.0" @@ -1417,6 +1567,21 @@ dependencies = [ "regex-automata", ] +[[package]] +name = "mdns-sd" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d797ab3274a16f4940f9650a29838e940223aeff31773df5c2827ad82150182f" +dependencies = [ + "fastrand", + "flume", + "if-addrs", + "log", + "mio", + "socket-pktinfo", + "socket2 0.6.2", +] + [[package]] name = "memchr" version = "2.7.6" @@ -1446,6 +1611,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" dependencies = [ "libc", + "log", "wasi", "windows-sys 0.61.2", ] @@ -1472,6 +1638,7 @@ version = "0.44.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3aa5e3b6a278ed061835fe1ee293b71641e6bf8b401cfe4e1834bbf4ef0a34e1" dependencies = [ + "aes", "base64 0.22.1", "bech32", "bip39", @@ -1496,7 +1663,7 @@ version = "0.44.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7462c9d8ae5ef6a28d66a192d399ad2530f1f2130b13186296dbb11bdef5b3d1" dependencies = [ - "lru", + "lru 0.16.3", "nostr", "tokio", ] @@ -1520,7 +1687,7 @@ dependencies = [ "async-wsocket", "atomic-destructor", "hex", - "lru", + "lru 0.16.3", "negentropy", "nostr", "nostr-database", @@ -1573,6 +1740,17 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +[[package]] +name = "parking_lot" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +dependencies = [ + "instant", + "lock_api", + "parking_lot_core 0.8.6", +] + [[package]] name = "parking_lot" version = "0.12.5" @@ -1580,7 +1758,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", - "parking_lot_core", + "parking_lot_core 0.9.12", +] + +[[package]] +name = "parking_lot_core" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" +dependencies = [ + "cfg-if", + "instant", + "libc", + "redox_syscall 0.2.16", + "smallvec", + "winapi", ] [[package]] @@ -1790,6 +1982,15 @@ dependencies = [ "getrandom 0.3.4", ] +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "redox_syscall" version = "0.5.18" @@ -1808,6 +2009,19 @@ dependencies = [ "bitflags 2.10.0", ] +[[package]] +name = "reed-solomon-erasure" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7263373d500d4d4f505d43a2a662d475a894aa94503a1ee28e9188b5f3960d4f" +dependencies = [ + "libm", + "lru 0.7.8", + "parking_lot 0.11.2", + "smallvec", + "spin", +] + [[package]] name = "regex" version = "1.12.2" @@ -2029,6 +2243,15 @@ dependencies = [ "untrusted", ] +[[package]] +name = "sd-notify" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b943eadf71d8b69e661330cb0e2656e31040acf21ee7708e2c238a0ec6af2bf4" +dependencies = [ + "libc", +] + [[package]] name = "secp256k1" version = "0.29.1" @@ -2065,6 +2288,26 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde_bencode" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a70dfc7b7438b99896e7f8992363ab8e2c4ba26aa5ec675d32d1c3c2c33d413e" +dependencies = [ + "serde", + "serde_bytes", +] + +[[package]] +name = "serde_bytes" +version = "0.11.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8" +dependencies = [ + "serde", + "serde_core", +] + [[package]] name = "serde_core" version = "1.0.228" @@ -2132,6 +2375,29 @@ dependencies = [ "unsafe-libyaml", ] +[[package]] +name = "serial2" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1401f562d358cdfdbdf8946e51a7871ede1db68bd0fd99bedc79e400241550" +dependencies = [ + "cfg-if", + "libc", + "winapi", +] + +[[package]] +name = "serial2-tokio" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b253fd088ff95a617a48e4f01e5543be9072e48663cc4e5a9544f0b258de1e36" +dependencies = [ + "libc", + "serial2", + "tokio", + "winapi", +] + [[package]] name = "sha-1" version = "0.10.1" @@ -2154,6 +2420,12 @@ dependencies = [ "digest", ] +[[package]] +name = "sha1_smol" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" + [[package]] name = "sha2" version = "0.10.9" @@ -2217,6 +2489,17 @@ version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" +[[package]] +name = "socket-pktinfo" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "927136cc2ae6a1b0e66ac6b1210902b75c3f726db004a73bc18686dcd0dcd22f" +dependencies = [ + "libc", + "socket2 0.6.2", + "windows-sys 0.60.2", +] + [[package]] name = "socket2" version = "0.5.10" @@ -2237,6 +2520,15 @@ dependencies = [ "windows-sys 0.60.2", ] +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] + [[package]] name = "spki" version = "0.7.3" @@ -2445,7 +2737,7 @@ dependencies = [ "bytes", "libc", "mio", - "parking_lot", + "parking_lot 0.12.5", "pin-project-lite", "signal-hook-registry", "socket2 0.6.2", @@ -2973,6 +3265,22 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + [[package]] name = "winapi-util" version = "0.1.11" @@ -2982,6 +3290,12 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + [[package]] name = "windows-core" version = "0.62.2" @@ -3338,6 +3652,12 @@ dependencies = [ "synstructure", ] +[[package]] +name = "zbase32" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f9079049688da5871a7558ddacb7f04958862c703e68258594cb7a862b5e33f" + [[package]] name = "zerocopy" version = "0.8.33" diff --git a/core/archipelago/Cargo.toml b/core/archipelago/Cargo.toml index 7a2cc2e1..1ddb8016 100644 --- a/core/archipelago/Cargo.toml +++ b/core/archipelago/Cargo.toml @@ -85,6 +85,14 @@ mainline = "2" zbase32 = "0.1" bytes = "1" +# Mesh networking (Meshcore serial protocol over USB LoRa radios) +serial2-tokio = "0.1" + +# Transport abstraction (Phase 2: mesh as federation transport) +ciborium = "0.2.2" # CBOR serde for compact delta sync +reed-solomon-erasure = "6.0" # FEC for chunked LoRa messages +mdns-sd = "0.18" # LAN peer discovery via mDNS + # Systemd watchdog notification sd-notify = "0.4" diff --git a/core/archipelago/src/api/handler.rs b/core/archipelago/src/api/handler.rs index 5e3def58..66989595 100644 --- a/core/archipelago/src/api/handler.rs +++ b/core/archipelago/src/api/handler.rs @@ -51,6 +51,11 @@ impl ApiHandler { }) } + /// Access the RPC handler (for service initialization after construction). + pub fn rpc_handler(&self) -> &Arc { + &self.rpc_handler + } + /// Check if the request has a valid session cookie. async fn is_authenticated(&self, headers: &hyper::HeaderMap) -> bool { match session::extract_session_cookie(headers) { @@ -161,6 +166,11 @@ impl ApiHandler { // Electrs status — unauthenticated (read-only sync status) (Method::GET, "/electrs-status") => Self::handle_electrs_status().await, + // LND connect info — unauthenticated (read-only, localhost only) + (Method::GET, "/lnd-connect-info") => { + Self::handle_lnd_connect_info(self.rpc_handler.clone()).await + } + // Container logs — requires session (Method::GET, path) if path.starts_with("/api/container/logs") => { if !self.is_authenticated(&headers).await { @@ -307,6 +317,28 @@ impl ApiHandler { .unwrap()) } + async fn handle_lnd_connect_info( + rpc: std::sync::Arc, + ) -> Result> { + match rpc.handle_lnd_connect_info().await { + Ok(val) => { + let body = serde_json::to_vec(&val).unwrap_or_default(); + Ok(Response::builder() + .status(StatusCode::OK) + .header("Content-Type", "application/json") + .body(hyper::Body::from(body)) + .unwrap()) + } + Err(e) => Ok(Response::builder() + .status(StatusCode::INTERNAL_SERVER_ERROR) + .header("Content-Type", "application/json") + .body(hyper::Body::from( + serde_json::json!({"error": e.to_string()}).to_string(), + )) + .unwrap()), + } + } + async fn handle_lnd_proxy(path: &str, cors_origin: &str) -> Result> { let suffix = path.strip_prefix("/proxy/lnd").unwrap_or("/"); let url = format!("http://127.0.0.1:8080{}", suffix); diff --git a/core/archipelago/src/api/rpc/lnd.rs b/core/archipelago/src/api/rpc/lnd.rs index 0b054b6d..b9ae2126 100644 --- a/core/archipelago/src/api/rpc/lnd.rs +++ b/core/archipelago/src/api/rpc/lnd.rs @@ -1,5 +1,6 @@ use super::RpcHandler; use anyhow::{Context, Result}; +use base64::Engine; use serde::{Deserialize, Serialize}; use tracing::info; @@ -797,6 +798,50 @@ impl RpcHandler { "incoming_pending_count": incoming_pending, })) } + + /// Return LND connection info: base64url-encoded TLS cert and admin macaroon + /// for building lndconnect:// URIs in the frontend. + pub(crate) async fn handle_lnd_connect_info(&self) -> Result { + let cert_path = "/var/lib/archipelago/lnd/tls.cert"; + let macaroon_path = + "/var/lib/archipelago/lnd/data/chain/bitcoin/mainnet/admin.macaroon"; + + // Read and encode TLS cert (PEM → DER → base64url) + let cert_pem = tokio::fs::read_to_string(cert_path) + .await + .context("Failed to read LND TLS certificate")?; + let cert_der_b64: String = cert_pem + .lines() + .filter(|l| !l.starts_with("-----")) + .collect(); + let cert_der = base64::engine::general_purpose::STANDARD + .decode(&cert_der_b64) + .context("Failed to decode PEM base64")?; + let cert_b64url = base64::engine::general_purpose::URL_SAFE_NO_PAD.encode(&cert_der); + + // Read and encode macaroon (binary → base64url) + let macaroon_bytes = tokio::fs::read(macaroon_path) + .await + .context("Failed to read LND admin macaroon")?; + let macaroon_b64url = + base64::engine::general_purpose::URL_SAFE_NO_PAD.encode(&macaroon_bytes); + + // Read Tor onion address if available + let tor_onion = tokio::fs::read_to_string( + "/var/lib/archipelago/tor/hidden_service_lnd/hostname", + ) + .await + .ok() + .map(|s| s.trim().to_string()); + + Ok(serde_json::json!({ + "cert_base64url": cert_b64url, + "macaroon_base64url": macaroon_b64url, + "tor_onion": tor_onion, + "rest_port": 8080, + "grpc_port": 10009, + })) + } } // Channel types diff --git a/core/archipelago/src/api/rpc/mesh.rs b/core/archipelago/src/api/rpc/mesh.rs index 01fff2c2..9c71a549 100644 --- a/core/archipelago/src/api/rpc/mesh.rs +++ b/core/archipelago/src/api/rpc/mesh.rs @@ -1,58 +1,122 @@ use super::RpcHandler; -use crate::{identity, mesh}; +use crate::mesh; use anyhow::Result; use tracing::info; impl RpcHandler { - /// mesh.status — Get mesh radio status and detected devices. + /// mesh.status — Get mesh radio status, device info, and peer count. pub(super) async fn handle_mesh_status(&self) -> Result { - let config = mesh::load_config(&self.config.data_dir).await?; - let devices = mesh::detect_meshtastic_devices().await; - - Ok(serde_json::json!({ - "enabled": config.enabled, - "device_path": config.device_path, - "channel_name": config.channel_name, - "broadcast_identity": config.broadcast_identity, - "detected_devices": devices, - })) + let service = self.mesh_service.read().await; + if let Some(svc) = service.as_ref() { + let status = svc.status().await; + Ok(serde_json::to_value(status)?) + } else { + // No service running — return basic config + device detection + let config = mesh::load_config(&self.config.data_dir).await?; + let devices = mesh::detect_devices().await; + Ok(serde_json::json!({ + "enabled": config.enabled, + "device_connected": false, + "device_type": "unknown", + "device_path": config.device_path, + "channel_name": config.channel_name.unwrap_or_else(|| "archipelago".to_string()), + "detected_devices": devices, + "peer_count": 0, + "messages_sent": 0, + "messages_received": 0, + })) + } } - /// mesh.discover — Discover nodes via mesh radio. - pub(super) async fn handle_mesh_discover( + /// mesh.peers — List discovered mesh peers. + pub(super) async fn handle_mesh_peers(&self) -> Result { + let service = self.mesh_service.read().await; + if let Some(svc) = service.as_ref() { + let peers = svc.peers().await; + Ok(serde_json::json!({ + "peers": peers, + "count": peers.len(), + })) + } else { + Ok(serde_json::json!({ + "peers": [], + "count": 0, + })) + } + } + + /// mesh.messages — Get recent mesh message history. + pub(super) async fn handle_mesh_messages( &self, params: Option, ) -> Result { - let device_path = params + let limit = params .as_ref() - .and_then(|p| p.get("device_path")) - .and_then(|v| v.as_str()); + .and_then(|p| p.get("limit")) + .and_then(|v| v.as_u64()) + .map(|n| n as usize); - let config = mesh::load_config(&self.config.data_dir).await?; - let effective_device = device_path.or(config.device_path.as_deref()); + let service = self.mesh_service.read().await; + if let Some(svc) = service.as_ref() { + let messages = svc.messages(limit).await; + Ok(serde_json::json!({ + "messages": messages, + "count": messages.len(), + })) + } else { + Ok(serde_json::json!({ + "messages": [], + "count": 0, + })) + } + } - let nodes = mesh::discover_nodes(effective_device).await?; + /// mesh.send — Send an encrypted message to a mesh peer. + pub(super) async fn handle_mesh_send( + &self, + params: Option, + ) -> Result { + let params = params.ok_or_else(|| anyhow::anyhow!("Missing params"))?; + + let contact_id = params + .get("contact_id") + .and_then(|v| v.as_u64()) + .ok_or_else(|| anyhow::anyhow!("Missing contact_id"))? as u32; + + let message = params + .get("message") + .and_then(|v| v.as_str()) + .ok_or_else(|| anyhow::anyhow!("Missing message"))?; + + if message.is_empty() { + anyhow::bail!("Message cannot be empty"); + } + + let service = self.mesh_service.read().await; + let svc = service + .as_ref() + .ok_or_else(|| anyhow::anyhow!("Mesh service not running. Enable mesh first."))?; + + let msg = svc.send_message(contact_id, message).await?; + info!(contact_id, encrypted = msg.encrypted, "Sent mesh message"); Ok(serde_json::json!({ - "nodes": nodes, - "count": nodes.len(), + "sent": true, + "message_id": msg.id, + "encrypted": msg.encrypted, })) } /// mesh.broadcast — Broadcast our node identity over mesh. pub(super) async fn handle_mesh_broadcast(&self) -> Result { - let config = mesh::load_config(&self.config.data_dir).await?; - if !config.enabled { - anyhow::bail!("Mesh networking is not enabled. Configure it first."); - } - - let (data, _) = self.state_manager.get_snapshot().await; - let did = identity::did_key_from_pubkey_hex(&data.server_info.pubkey)?; - let pubkey = &data.server_info.pubkey; - - mesh::broadcast_identity(&did, pubkey, config.device_path.as_deref()).await?; + let service = self.mesh_service.read().await; + let svc = service + .as_ref() + .ok_or_else(|| anyhow::anyhow!("Mesh service not running. Enable mesh first."))?; + svc.broadcast_identity().await?; info!("Broadcast identity over mesh"); + Ok(serde_json::json!({ "broadcast": true })) } @@ -77,9 +141,18 @@ impl RpcHandler { if let Some(broadcast) = params.get("broadcast_identity").and_then(|v| v.as_bool()) { config.broadcast_identity = broadcast; } + if let Some(name) = params.get("advert_name").and_then(|v| v.as_str()) { + config.advert_name = Some(name.to_string()); + } mesh::save_config(&self.config.data_dir, &config).await?; + // If we have a running service, update its config + let mut service = self.mesh_service.write().await; + if let Some(svc) = service.as_mut() { + svc.configure(config.clone()).await?; + } + info!("Mesh config updated"); Ok(serde_json::json!({ "configured": true, diff --git a/core/archipelago/src/api/rpc/mod.rs b/core/archipelago/src/api/rpc/mod.rs index 2cd019d4..44085393 100644 --- a/core/archipelago/src/api/rpc/mod.rs +++ b/core/archipelago/src/api/rpc/mod.rs @@ -23,6 +23,7 @@ mod peers; mod router; mod security; mod tor; +mod transport; mod totp; mod system; mod update; @@ -166,6 +167,8 @@ pub struct RpcHandler { login_rate_limiter: LoginRateLimiter, endpoint_rate_limiter: EndpointRateLimiter, response_cache: ResponseCache, + mesh_service: Arc>>, + transport_router: Arc>>>, } impl RpcHandler { @@ -196,9 +199,26 @@ impl RpcHandler { login_rate_limiter: LoginRateLimiter::new(), endpoint_rate_limiter: EndpointRateLimiter::new(), response_cache: ResponseCache::new(5), + mesh_service: Arc::new(tokio::sync::RwLock::new(None)), + transport_router: Arc::new(tokio::sync::RwLock::new(None)), }) } + /// Set the mesh service (called after identity is loaded). + pub async fn set_mesh_service(&self, service: crate::mesh::MeshService) { + *self.mesh_service.write().await = Some(service); + } + + /// Set the transport router (called after all transports are initialized). + pub async fn set_transport_router(&self, router: Arc) { + *self.transport_router.write().await = Some(router); + } + + /// Get reference to the mesh service Arc (for MeshTransport wrapper). + pub fn mesh_service_arc(&self) -> Arc>> { + Arc::clone(&self.mesh_service) + } + fn cookie_suffix(&self) -> &'static str { if self.config.dev_mode { "" } else { "; Secure" } } @@ -471,6 +491,7 @@ impl RpcHandler { "lnd.create-psbt" => self.handle_lnd_create_psbt(params).await, "lnd.finalize-psbt" => self.handle_lnd_finalize_psbt(params).await, "lnd.gettransactions" => self.handle_lnd_gettransactions().await, + "lnd.connect-info" => self.handle_lnd_connect_info().await, // Multi-identity management "identity.list" => self.handle_identity_list(params).await, @@ -618,12 +639,20 @@ impl RpcHandler { "marketplace.create-invoice" => self.handle_marketplace_create_invoice(params).await, "marketplace.check-payment" => self.handle_marketplace_check_payment(params).await, - // Mesh networking + // Mesh networking (Meshcore LoRa) "mesh.status" => self.handle_mesh_status().await, - "mesh.discover" => self.handle_mesh_discover(params).await, + "mesh.peers" => self.handle_mesh_peers().await, + "mesh.messages" => self.handle_mesh_messages(params).await, + "mesh.send" => self.handle_mesh_send(params).await, "mesh.broadcast" => self.handle_mesh_broadcast().await, "mesh.configure" => self.handle_mesh_configure(params).await, + // Transport layer (unified routing) + "transport.status" => self.handle_transport_status().await, + "transport.peers" => self.handle_transport_peers().await, + "transport.send" => self.handle_transport_send(params).await, + "transport.set-mode" => self.handle_transport_set_mode(params).await, + // Server settings "server.set-name" => self.handle_server_set_name(params).await, diff --git a/core/archipelago/src/api/rpc/transport.rs b/core/archipelago/src/api/rpc/transport.rs new file mode 100644 index 00000000..cb32edb6 --- /dev/null +++ b/core/archipelago/src/api/rpc/transport.rs @@ -0,0 +1,139 @@ +use super::RpcHandler; +use crate::transport::{MessageType, TransportMessage}; +use anyhow::Result; +use tracing::info; + +impl RpcHandler { + /// transport.status — Get available transports and their status. + pub(super) async fn handle_transport_status(&self) -> Result { + let router = self.transport_router.read().await; + if let Some(r) = router.as_ref() { + let transports: Vec = r + .transport_status() + .into_iter() + .map(|(kind, available)| { + serde_json::json!({ + "kind": kind.to_string(), + "available": available, + }) + }) + .collect(); + let peer_count = r.registry.count().await; + let mesh_only = r.is_mesh_only().await; + + Ok(serde_json::json!({ + "transports": transports, + "mesh_only": mesh_only, + "peer_count": peer_count, + })) + } else { + Ok(serde_json::json!({ + "transports": [], + "mesh_only": false, + "peer_count": 0, + })) + } + } + + /// transport.peers — Get unified peer list with per-peer transport capabilities. + pub(super) async fn handle_transport_peers(&self) -> Result { + let router = self.transport_router.read().await; + if let Some(r) = router.as_ref() { + let peers = r.registry.all_peers().await; + let peer_values: Vec = peers + .into_iter() + .map(|p| { + let available = p.available_transports(); + let preferred = available.first().map(|t| t.to_string()); + serde_json::json!({ + "did": p.did, + "pubkey_hex": p.pubkey_hex, + "name": p.name, + "trust_level": p.trust_level, + "mesh_contact_id": p.mesh_contact_id, + "lan_address": p.lan_address, + "onion_address": p.onion_address, + "preferred_transport": preferred, + "available_transports": available.iter().map(|t| t.to_string()).collect::>(), + "last_seen": p.last_mesh.or(p.last_lan).or(p.last_tor), + }) + }) + .collect(); + + Ok(serde_json::json!({ "peers": peer_values })) + } else { + Ok(serde_json::json!({ "peers": [] })) + } + } + + /// transport.send — Send a message to a peer via best available transport. + pub(super) async fn handle_transport_send( + &self, + params: Option, + ) -> Result { + let params = params.as_ref().ok_or_else(|| anyhow::anyhow!("Missing params"))?; + let did = params["did"] + .as_str() + .ok_or_else(|| anyhow::anyhow!("Missing 'did' param"))? + .to_string(); + let payload = params["payload"] + .as_str() + .ok_or_else(|| anyhow::anyhow!("Missing 'payload' param"))? + .to_string(); + + let router = self.transport_router.read().await; + let router = router + .as_ref() + .ok_or_else(|| anyhow::anyhow!("Transport router not initialized"))?; + + let (data, _) = self.state_manager.get_snapshot().await; + let our_did = crate::identity::did_key_from_pubkey_hex(&data.server_info.pubkey) + .unwrap_or_default(); + + let message = TransportMessage { + from_did: our_did, + payload: payload.as_bytes().to_vec(), + message_type: MessageType::PeerMessage, + }; + + let transport_used = router.send_to_peer(did, &message).await?; + + info!(did = %did, transport = %transport_used, "Sent message via transport"); + Ok(serde_json::json!({ + "sent": true, + "transport_used": transport_used.to_string(), + "did": did, + })) + } + + /// transport.set-mode — Toggle mesh-only (off-grid) mode. + pub(super) async fn handle_transport_set_mode( + &self, + params: Option, + ) -> Result { + let params = params.as_ref().ok_or_else(|| anyhow::anyhow!("Missing params"))?; + let mesh_only = params["mesh_only"] + .as_bool() + .ok_or_else(|| anyhow::anyhow!("Missing 'mesh_only' bool param"))?; + + let router = self.transport_router.read().await; + let router = router + .as_ref() + .ok_or_else(|| anyhow::anyhow!("Transport router not initialized"))?; + + router.set_mesh_only(mesh_only).await; + + // Also persist to mesh config + let mut mesh_config = crate::mesh::load_config(&self.config.data_dir) + .await + .unwrap_or_default(); + mesh_config.mesh_only_mode = Some(mesh_only); + crate::mesh::save_config(&self.config.data_dir, &mesh_config).await?; + + info!(mesh_only = mesh_only, "Transport mode updated"); + Ok(serde_json::json!({ + "mesh_only": mesh_only, + "configured": true, + })) + } +} diff --git a/core/archipelago/src/electrs_status.rs b/core/archipelago/src/electrs_status.rs index 9cf53cf5..02a3af74 100644 --- a/core/archipelago/src/electrs_status.rs +++ b/core/archipelago/src/electrs_status.rs @@ -32,6 +32,8 @@ pub struct ElectrsSyncStatus { pub error: Option, /// Index data size in human-readable format (e.g. "11.2 GB") pub index_size: Option, + /// Tor onion address for ElectrumX (if available) + pub tor_onion: Option, } /// Get the total size of a directory in bytes. @@ -146,6 +148,14 @@ pub async fn get_electrs_sync_status() -> ElectrsSyncStatus { None }; + // Read Tor onion address if available + let tor_onion = tokio::fs::read_to_string( + "/var/lib/archipelago/tor/hidden_service_electrs/hostname", + ) + .await + .ok() + .map(|s| s.trim().to_string()); + let network_height = match bitcoin_network_height().await { Ok(h) => h, Err(e) => { @@ -156,6 +166,7 @@ pub async fn get_electrs_sync_status() -> ElectrsSyncStatus { status: "error".to_string(), error: Some(format!("Bitcoin RPC: {}", e)), index_size, + tor_onion, }; } }; @@ -196,6 +207,7 @@ pub async fn get_electrs_sync_status() -> ElectrsSyncStatus { status, error, index_size, + tor_onion: tor_onion.clone(), }; } Err(e) => { @@ -206,6 +218,7 @@ pub async fn get_electrs_sync_status() -> ElectrsSyncStatus { status: "error".to_string(), error: Some(format!("Task: {}", e)), index_size, + tor_onion: tor_onion.clone(), }; } }; @@ -229,5 +242,6 @@ pub async fn get_electrs_sync_status() -> ElectrsSyncStatus { status: status.to_string(), error: None, index_size, + tor_onion, } } diff --git a/core/archipelago/src/identity.rs b/core/archipelago/src/identity.rs index 5d350ba3..05bf83a8 100644 --- a/core/archipelago/src/identity.rs +++ b/core/archipelago/src/identity.rs @@ -61,6 +61,11 @@ impl NodeIdentity { }) } + /// Access the signing key (for key derivation, e.g. mesh encryption). + pub fn signing_key(&self) -> &SigningKey { + &self.signing_key + } + /// Public key as hex string (for ServerInfo, Nostr, etc.) pub fn pubkey_hex(&self) -> String { hex::encode(self.signing_key.verifying_key().as_bytes()) diff --git a/core/archipelago/src/main.rs b/core/archipelago/src/main.rs index 2174d995..262cf516 100644 --- a/core/archipelago/src/main.rs +++ b/core/archipelago/src/main.rs @@ -25,6 +25,7 @@ mod identity_manager; mod marketplace; mod mesh; mod monitoring; +mod transport; mod node_message; mod nostr_discovery; mod nostr_handshake; diff --git a/core/archipelago/src/mesh.rs b/core/archipelago/src/mesh.rs deleted file mode 100644 index f3383bb3..00000000 --- a/core/archipelago/src/mesh.rs +++ /dev/null @@ -1,265 +0,0 @@ -//! Mesh networking: local node discovery over LoRa (Meshtastic) and BLE. -//! -//! Broadcasts node identity over mesh radio networks for offline peer discovery. -//! Uses Meshtastic serial protocol when a compatible radio is connected via USB. - -use anyhow::{Context, Result}; -use serde::{Deserialize, Serialize}; -use std::path::Path; -use tokio::fs; - -const MESH_CONFIG_FILE: &str = "mesh-config.json"; - -/// A node discovered via mesh radio. -#[derive(Debug, Clone, Serialize, Deserialize)] -pub struct MeshNode { - pub node_id: String, - pub did: Option, - pub pubkey: Option, - pub rssi: Option, - pub snr: Option, - pub last_heard: String, - #[serde(default)] - pub hops: u32, - #[serde(default)] - pub channel: Option, -} - -/// Mesh configuration. -#[derive(Debug, Clone, Serialize, Deserialize)] -pub struct MeshConfig { - pub enabled: bool, - #[serde(default)] - pub device_path: Option, - #[serde(default)] - pub channel_name: Option, - #[serde(default)] - pub broadcast_identity: bool, -} - -impl Default for MeshConfig { - fn default() -> Self { - Self { - enabled: false, - device_path: None, - channel_name: Some("archipelago".to_string()), - broadcast_identity: true, - } - } -} - -pub async fn load_config(data_dir: &Path) -> Result { - let path = data_dir.join(MESH_CONFIG_FILE); - if !path.exists() { - return Ok(MeshConfig::default()); - } - let content = fs::read_to_string(&path) - .await - .context("Failed to read mesh config")?; - let config: MeshConfig = serde_json::from_str(&content).unwrap_or_default(); - Ok(config) -} - -pub async fn save_config(data_dir: &Path, config: &MeshConfig) -> Result<()> { - fs::create_dir_all(data_dir).await.context("Failed to create data dir")?; - let content = - serde_json::to_string_pretty(config).context("Failed to serialize mesh config")?; - fs::write(data_dir.join(MESH_CONFIG_FILE), content) - .await - .context("Failed to write mesh config")?; - Ok(()) -} - -/// Detect Meshtastic-compatible USB devices. -/// Meshtastic radios typically appear as USB serial devices (CP210x, CH340, FTDI). -pub async fn detect_meshtastic_devices() -> Vec { - let mut devices = Vec::new(); - - // Check for common serial device paths - let candidates = [ - "/dev/ttyUSB0", - "/dev/ttyUSB1", - "/dev/ttyACM0", - "/dev/ttyACM1", - ]; - - for path in &candidates { - if tokio::fs::metadata(path).await.is_ok() { - devices.push(path.to_string()); - } - } - - // Also scan sysfs for Meshtastic-specific USB VIDs - if let Ok(mut entries) = tokio::fs::read_dir("/sys/bus/usb/devices").await { - while let Ok(Some(entry)) = entries.next_entry().await { - let vid_path = entry.path().join("idVendor"); - if let Ok(vid_str) = tokio::fs::read_to_string(&vid_path).await { - let vid = vid_str.trim(); - // Silicon Labs CP210x (common Meshtastic radio) - // CH340 USB-serial - // FTDI FT232 - if vid == "10c4" || vid == "1a86" || vid == "0403" { - let product = tokio::fs::read_to_string(entry.path().join("product")) - .await - .map(|s| s.trim().to_string()) - .unwrap_or_else(|_| "Serial Device".to_string()); - devices.push(format!("{} ({})", entry.path().display(), product)); - } - } - } - } - - devices -} - -/// Discover nodes via Meshtastic CLI (meshtastic --nodes). -/// Returns nodes that have broadcast their Archipelago identity. -pub async fn discover_nodes(device_path: Option<&str>) -> Result> { - let mut cmd = tokio::process::Command::new("meshtastic"); - cmd.arg("--nodes"); - - if let Some(dev) = device_path { - cmd.arg("--port").arg(dev); - } - - let output = cmd - .output() - .await - .context("Failed to run meshtastic CLI — is it installed?")?; - - if !output.status.success() { - let stderr = String::from_utf8_lossy(&output.stderr); - if stderr.contains("No Meshtastic") || stderr.contains("not found") { - return Ok(Vec::new()); - } - anyhow::bail!("meshtastic --nodes failed: {}", stderr); - } - - let stdout = String::from_utf8_lossy(&output.stdout); - let mut nodes = Vec::new(); - - // Parse the meshtastic CLI node list output - // Format varies but typically: NodeNum | User | AKA | ... - for line in stdout.lines().skip(2) { - // Skip header lines - let parts: Vec<&str> = line.split('|').map(|s| s.trim()).collect(); - if parts.len() < 3 { - continue; - } - - let node_id = parts.first().unwrap_or(&"").to_string(); - if node_id.is_empty() || node_id.starts_with('-') { - continue; - } - - nodes.push(MeshNode { - node_id: node_id.trim().to_string(), - did: None, - pubkey: None, - rssi: None, - snr: None, - last_heard: chrono::Utc::now().to_rfc3339(), - hops: 0, - channel: None, - }); - } - - Ok(nodes) -} - -/// Broadcast our node identity over mesh. -pub async fn broadcast_identity( - did: &str, - pubkey: &str, - device_path: Option<&str>, -) -> Result<()> { - let message = format!("ARCHY:{}:{}", did, pubkey); - - let mut cmd = tokio::process::Command::new("meshtastic"); - cmd.arg("--sendtext").arg(&message); - - if let Some(dev) = device_path { - cmd.arg("--port").arg(dev); - } - - let output = cmd - .output() - .await - .context("Failed to broadcast via meshtastic")?; - - if !output.status.success() { - anyhow::bail!( - "meshtastic broadcast failed: {}", - String::from_utf8_lossy(&output.stderr) - ); - } - - Ok(()) -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn test_mesh_config_default() { - let config = MeshConfig::default(); - assert!(!config.enabled); - assert_eq!(config.channel_name, Some("archipelago".to_string())); - assert!(config.broadcast_identity); - } - - #[test] - fn test_mesh_config_serialization() { - let config = MeshConfig { - enabled: true, - device_path: Some("/dev/ttyUSB0".to_string()), - channel_name: Some("test".to_string()), - broadcast_identity: false, - }; - let json = serde_json::to_string(&config).unwrap(); - let parsed: MeshConfig = serde_json::from_str(&json).unwrap(); - assert!(parsed.enabled); - assert_eq!(parsed.device_path, Some("/dev/ttyUSB0".to_string())); - } - - #[test] - fn test_mesh_node_serialization() { - let node = MeshNode { - node_id: "!aabbccdd".to_string(), - did: Some("did:key:z123".to_string()), - pubkey: Some("pubhex".to_string()), - rssi: Some(-85), - snr: Some(7.5), - last_heard: "2026-03-10T00:00:00Z".to_string(), - hops: 1, - channel: Some("archipelago".to_string()), - }; - let json = serde_json::to_string(&node).unwrap(); - let parsed: MeshNode = serde_json::from_str(&json).unwrap(); - assert_eq!(parsed.node_id, "!aabbccdd"); - assert_eq!(parsed.rssi, Some(-85)); - } - - #[tokio::test] - async fn test_load_config_default_when_no_file() { - let dir = tempfile::tempdir().unwrap(); - let config = load_config(dir.path()).await.unwrap(); - assert!(!config.enabled); - } - - #[tokio::test] - async fn test_save_and_load_config_roundtrip() { - let dir = tempfile::tempdir().unwrap(); - let config = MeshConfig { - enabled: true, - device_path: Some("/dev/ttyUSB0".to_string()), - channel_name: Some("archy".to_string()), - broadcast_identity: true, - }; - save_config(dir.path(), &config).await.unwrap(); - let loaded = load_config(dir.path()).await.unwrap(); - assert!(loaded.enabled); - assert_eq!(loaded.device_path, Some("/dev/ttyUSB0".to_string())); - } -} diff --git a/core/archipelago/src/mesh/crypto.rs b/core/archipelago/src/mesh/crypto.rs new file mode 100644 index 00000000..fc2ba714 --- /dev/null +++ b/core/archipelago/src/mesh/crypto.rs @@ -0,0 +1,217 @@ +//! Mesh message encryption: X25519 ECDH key agreement + ChaCha20-Poly1305. +//! +//! Reuses Archipelago's existing Ed25519 identity infrastructure. +//! Ed25519 keys are converted to X25519 for Diffie-Hellman key exchange, +//! then ChaCha20-Poly1305 encrypts each message with a unique random nonce. + +use anyhow::Result; +use chacha20poly1305::aead::{Aead, KeyInit}; +use chacha20poly1305::{ChaCha20Poly1305, Nonce}; +use rand::RngCore; + +/// Nonce size for ChaCha20-Poly1305. +const NONCE_SIZE: usize = 12; + +/// Auth tag size for ChaCha20-Poly1305. +const TAG_SIZE: usize = 16; + +/// Minimum ciphertext size: nonce + at least 1 byte + tag. +const MIN_CIPHERTEXT_SIZE: usize = NONCE_SIZE + 1 + TAG_SIZE; + +/// Convert an Ed25519 public key (32 bytes) to an X25519 public key (32 bytes). +/// Uses the standard Edwards-to-Montgomery conversion. +pub fn ed25519_pubkey_to_x25519(ed_pubkey: &[u8; 32]) -> Result<[u8; 32]> { + let compressed = curve25519_dalek::edwards::CompressedEdwardsY(*ed_pubkey); + let point = compressed + .decompress() + .ok_or_else(|| anyhow::anyhow!("Invalid Ed25519 public key: decompression failed"))?; + let montgomery = point.to_montgomery(); + Ok(*montgomery.as_bytes()) +} + +/// Convert an Ed25519 signing key to an X25519 secret key. +/// Applies SHA-512 clamping as per RFC 7748. +pub fn ed25519_secret_to_x25519(signing_key: &ed25519_dalek::SigningKey) -> [u8; 32] { + // The X25519 secret is derived from the first 32 bytes of SHA-512(ed25519_secret) + // with clamping applied. ed25519-dalek's to_scalar() handles this. + let hash = ::digest(signing_key.to_bytes()); + let mut x25519_secret = [0u8; 32]; + x25519_secret.copy_from_slice(&hash[..32]); + // Clamp per RFC 7748 + x25519_secret[0] &= 248; + x25519_secret[31] &= 127; + x25519_secret[31] |= 64; + x25519_secret +} + +/// Perform X25519 Diffie-Hellman key agreement. +/// Returns a 32-byte shared secret. +pub fn x25519_shared_secret(our_secret: &[u8; 32], their_public: &[u8; 32]) -> [u8; 32] { + use curve25519_dalek::montgomery::MontgomeryPoint; + use curve25519_dalek::scalar::Scalar; + + let their_point = MontgomeryPoint(*their_public); + let our_scalar = Scalar::from_bytes_mod_order(*our_secret); + let shared = their_point * our_scalar; + *shared.as_bytes() +} + +/// Encrypt plaintext with ChaCha20-Poly1305 using a shared secret. +/// Output format: [nonce (12 bytes)] + [ciphertext + tag (16 bytes)] +/// +/// Each call generates a fresh random 12-byte nonce via OsRng (CSPRNG). +pub fn encrypt(shared_secret: &[u8; 32], plaintext: &[u8]) -> Result> { + let cipher = ChaCha20Poly1305::new_from_slice(shared_secret) + .map_err(|e| anyhow::anyhow!("Failed to create cipher: {}", e))?; + + let mut nonce_bytes = [0u8; NONCE_SIZE]; + rand::rngs::OsRng.fill_bytes(&mut nonce_bytes); + let nonce = Nonce::from_slice(&nonce_bytes); + + let ciphertext = cipher + .encrypt(nonce, plaintext) + .map_err(|e| anyhow::anyhow!("Encryption failed: {}", e))?; + + let mut output = Vec::with_capacity(NONCE_SIZE + ciphertext.len()); + output.extend_from_slice(&nonce_bytes); + output.extend_from_slice(&ciphertext); + Ok(output) +} + +/// Decrypt ciphertext produced by `encrypt()`. +/// Input format: [nonce (12 bytes)] + [ciphertext + tag (16 bytes)] +pub fn decrypt(shared_secret: &[u8; 32], data: &[u8]) -> Result> { + if data.len() < MIN_CIPHERTEXT_SIZE { + anyhow::bail!( + "Ciphertext too short: {} bytes (minimum {})", + data.len(), + MIN_CIPHERTEXT_SIZE + ); + } + + let nonce = Nonce::from_slice(&data[..NONCE_SIZE]); + let ciphertext = &data[NONCE_SIZE..]; + + let cipher = ChaCha20Poly1305::new_from_slice(shared_secret) + .map_err(|e| anyhow::anyhow!("Failed to create cipher: {}", e))?; + + cipher + .decrypt(nonce, ciphertext) + .map_err(|_| anyhow::anyhow!("Decryption failed: invalid key or corrupted message")) +} + +/// Maximum plaintext bytes that fit in a single encrypted LoRa message. +/// 160 (max LoRa payload) - 12 (nonce) - 16 (tag) = 132 bytes. +pub const MAX_ENCRYPTED_PLAINTEXT: usize = 160 - NONCE_SIZE - TAG_SIZE; + +#[cfg(test)] +mod tests { + use super::*; + use ed25519_dalek::SigningKey; + use rand::rngs::OsRng; + + #[test] + fn test_encrypt_decrypt_roundtrip() { + let shared_secret = [42u8; 32]; + let plaintext = b"hello from mesh"; + + let ciphertext = encrypt(&shared_secret, plaintext).unwrap(); + assert!(ciphertext.len() > plaintext.len()); // nonce + tag overhead + + let decrypted = decrypt(&shared_secret, &ciphertext).unwrap(); + assert_eq!(decrypted, plaintext); + } + + #[test] + fn test_decrypt_wrong_key() { + let secret1 = [1u8; 32]; + let secret2 = [2u8; 32]; + + let ciphertext = encrypt(&secret1, b"secret").unwrap(); + assert!(decrypt(&secret2, &ciphertext).is_err()); + } + + #[test] + fn test_decrypt_corrupted() { + let secret = [42u8; 32]; + let mut ciphertext = encrypt(&secret, b"test").unwrap(); + // Flip a byte in the ciphertext (after nonce) + let idx = NONCE_SIZE + 1; + ciphertext[idx] ^= 0xFF; + assert!(decrypt(&secret, &ciphertext).is_err()); + } + + #[test] + fn test_decrypt_too_short() { + let secret = [42u8; 32]; + assert!(decrypt(&secret, &[0u8; 10]).is_err()); + } + + #[test] + fn test_unique_nonces() { + let secret = [42u8; 32]; + let ct1 = encrypt(&secret, b"same").unwrap(); + let ct2 = encrypt(&secret, b"same").unwrap(); + // Nonces (first 12 bytes) should differ + assert_ne!(&ct1[..NONCE_SIZE], &ct2[..NONCE_SIZE]); + } + + #[test] + fn test_ed25519_to_x25519_pubkey() { + let signing_key = SigningKey::generate(&mut OsRng); + let ed_pubkey = signing_key.verifying_key().to_bytes(); + let x25519 = ed25519_pubkey_to_x25519(&ed_pubkey).unwrap(); + // Should produce 32 non-zero bytes + assert_eq!(x25519.len(), 32); + assert!(x25519.iter().any(|&b| b != 0)); + } + + #[test] + fn test_x25519_key_agreement() { + // Generate two Ed25519 keypairs + let alice_signing = SigningKey::generate(&mut OsRng); + let bob_signing = SigningKey::generate(&mut OsRng); + + // Convert to X25519 + let alice_secret = ed25519_secret_to_x25519(&alice_signing); + let bob_secret = ed25519_secret_to_x25519(&bob_signing); + let alice_public = ed25519_pubkey_to_x25519(&alice_signing.verifying_key().to_bytes()).unwrap(); + let bob_public = ed25519_pubkey_to_x25519(&bob_signing.verifying_key().to_bytes()).unwrap(); + + // Both sides should derive the same shared secret + let shared_ab = x25519_shared_secret(&alice_secret, &bob_public); + let shared_ba = x25519_shared_secret(&bob_secret, &alice_public); + assert_eq!(shared_ab, shared_ba); + } + + #[test] + fn test_full_encrypt_decrypt_with_key_agreement() { + let alice_signing = SigningKey::generate(&mut OsRng); + let bob_signing = SigningKey::generate(&mut OsRng); + + let alice_secret = ed25519_secret_to_x25519(&alice_signing); + let bob_secret = ed25519_secret_to_x25519(&bob_signing); + let alice_public = ed25519_pubkey_to_x25519(&alice_signing.verifying_key().to_bytes()).unwrap(); + let bob_public = ed25519_pubkey_to_x25519(&bob_signing.verifying_key().to_bytes()).unwrap(); + + let shared = x25519_shared_secret(&alice_secret, &bob_public); + + // Alice encrypts + let plaintext = b"sats over mesh"; + let ciphertext = encrypt(&shared, plaintext).unwrap(); + + // Bob decrypts with same shared secret + let bob_shared = x25519_shared_secret(&bob_secret, &alice_public); + let decrypted = decrypt(&bob_shared, &ciphertext).unwrap(); + assert_eq!(decrypted, plaintext); + } + + #[test] + fn test_max_encrypted_plaintext_fits() { + let secret = [42u8; 32]; + let plaintext = vec![0xAB; MAX_ENCRYPTED_PLAINTEXT]; + let ciphertext = encrypt(&secret, &plaintext).unwrap(); + // Should fit within LoRa max message size (160 bytes) + assert!(ciphertext.len() <= 160); + } +} diff --git a/core/archipelago/src/mesh/listener.rs b/core/archipelago/src/mesh/listener.rs new file mode 100644 index 00000000..acbbbdfd --- /dev/null +++ b/core/archipelago/src/mesh/listener.rs @@ -0,0 +1,656 @@ +//! Background mesh listener task. +//! +//! Runs as a long-lived tokio task that: +//! - Maintains the serial connection to the Meshcore device +//! - Reads incoming frames and dispatches events +//! - Periodically broadcasts our identity advertisement +//! - Reconnects on device disconnect +//! - Manages peer cache and message store + +use super::crypto; +use super::protocol; +use super::serial::MeshcoreDevice; +use super::types::*; +use anyhow::Result; +use std::collections::{HashMap, VecDeque}; +use tokio::sync::mpsc; +use std::sync::Arc; +use std::time::Duration; +use tokio::sync::{broadcast, RwLock}; +use tracing::{debug, error, info, warn}; + +/// How often to broadcast our identity advertisement (seconds). +const ADVERT_INTERVAL: Duration = Duration::from_secs(60); + +/// How often to poll for queued messages when no push notifications. +const SYNC_INTERVAL: Duration = Duration::from_secs(10); + +/// Maximum stored messages (circular buffer). +const MAX_MESSAGES: usize = 100; + +/// Delay before reconnection attempt after device disconnect. +const RECONNECT_DELAY: Duration = Duration::from_secs(10); + +/// Command sent from MeshService to the listener task (which owns the serial port). +pub enum MeshCommand { + SendText { dest_pubkey_prefix: [u8; 6], payload: Vec }, + SendAdvert, +} + +/// Shared state for the mesh listener, accessible from RPC handlers. +pub struct MeshState { + pub peers: RwLock>, + pub messages: RwLock>, + pub shared_secrets: RwLock>, + pub status: RwLock, + pub event_tx: broadcast::Sender, + pub cmd_tx: mpsc::Sender, + next_message_id: RwLock, +} + +impl MeshState { + pub fn new(channel_name: &str) -> (Arc, broadcast::Receiver, mpsc::Receiver) { + let (tx, rx) = broadcast::channel(64); + let (cmd_tx, cmd_rx) = mpsc::channel(32); + let state = Arc::new(Self { + peers: RwLock::new(HashMap::new()), + messages: RwLock::new(VecDeque::new()), + shared_secrets: RwLock::new(HashMap::new()), + cmd_tx, + status: RwLock::new(MeshStatus { + enabled: true, + device_type: DeviceType::Unknown, + device_path: None, + device_connected: false, + firmware_version: None, + self_node_id: None, + self_advert_name: None, + peer_count: 0, + channel_name: channel_name.to_string(), + messages_sent: 0, + messages_received: 0, + }), + event_tx: tx, + next_message_id: RwLock::new(1), + }); + (state, rx, cmd_rx) + } + + pub async fn next_id(&self) -> u64 { + let mut id = self.next_message_id.write().await; + let current = *id; + *id += 1; + current + } + + pub async fn store_message(&self, msg: MeshMessage) { + let mut messages = self.messages.write().await; + messages.push_back(msg); + if messages.len() > MAX_MESSAGES { + messages.pop_front(); + } + } + + async fn update_peer_count(&self) { + let count = self.peers.read().await.len(); + self.status.write().await.peer_count = count; + } +} + +/// Spawn the background mesh listener task. +/// +/// This task manages the full lifecycle: +/// 1. Detect and connect to Meshcore device +/// 2. Initialize and set advert name +/// 3. Main loop: read frames, dispatch events, periodic adverts +/// 4. Reconnect on disconnect +pub fn spawn_mesh_listener( + state: Arc, + device_path: Option, + our_did: String, + our_ed_pubkey_hex: String, + our_x25519_secret: [u8; 32], + our_x25519_pubkey_hex: String, + shutdown: tokio::sync::watch::Receiver, + cmd_rx: mpsc::Receiver, +) -> tokio::task::JoinHandle<()> { + tokio::spawn(async move { + let mut shutdown = shutdown; + let mut cmd_rx = cmd_rx; + loop { + if *shutdown.borrow() { + info!("Mesh listener shutting down"); + return; + } + + match run_mesh_session( + &state, + device_path.as_deref(), + &our_did, + &our_ed_pubkey_hex, + &our_x25519_secret, + &our_x25519_pubkey_hex, + &mut shutdown, + &mut cmd_rx, + ) + .await + { + Ok(()) => { + info!("Mesh session ended cleanly"); + } + Err(e) => { + error!("Mesh session error: {}", e); + } + } + + // Update status to disconnected + { + let mut status = state.status.write().await; + status.device_connected = false; + status.device_path = None; + } + let _ = state.event_tx.send(MeshEvent::DeviceDisconnected); + + // Wait before reconnecting + tokio::select! { + _ = tokio::time::sleep(RECONNECT_DELAY) => {}, + _ = shutdown.changed() => { + if *shutdown.borrow() { return; } + }, + } + } + }) +} + +/// Run a single mesh session (connect, initialize, main loop). +async fn run_mesh_session( + state: &Arc, + preferred_path: Option<&str>, + our_did: &str, + our_ed_pubkey_hex: &str, + our_x25519_secret: &[u8; 32], + our_x25519_pubkey_hex: &str, + shutdown: &mut tokio::sync::watch::Receiver, + cmd_rx: &mut mpsc::Receiver, +) -> Result<()> { + // Detect device + let device_path = if let Some(path) = preferred_path { + path.to_string() + } else { + let paths = super::serial::detect_serial_devices().await; + if paths.is_empty() { + anyhow::bail!("No serial devices found"); + } + match super::serial::probe_for_meshcore(&paths).await { + Some((path, _)) => path, + None => anyhow::bail!("No Meshcore device found on available serial ports"), + } + }; + + // Open and initialize + let mut device = MeshcoreDevice::open(&device_path).await?; + let device_info = device.initialize().await?; + + // Update status + { + let mut status = state.status.write().await; + status.device_connected = true; + status.device_type = DeviceType::Meshcore; + status.device_path = Some(device_path.clone()); + status.firmware_version = Some(device_info.firmware_version.clone()); + status.self_node_id = Some(device_info.node_id); + status.self_advert_name = device.advert_name.clone(); + } + + let _ = state.event_tx.send(MeshEvent::DeviceConnected(device_info)); + + // Set advert name to something identifiable + let short_did = our_did.chars().skip(8).take(8).collect::(); + let advert_name = format!("Archy-{}", short_did); + if let Err(e) = device.set_advert_name(&advert_name).await { + warn!("Failed to set advert name: {}", e); + } + + // Broadcast our advertisement so other nodes can discover us + if let Err(e) = device.send_self_advert().await { + warn!("Failed to send initial advert: {}", e); + } + + // Fetch existing contacts from the device + refresh_contacts(&mut device, state).await; + + // Sync any queued messages from before we connected + sync_queued_messages(&mut device, state, our_x25519_secret).await; + + // Main loop + let mut advert_timer = tokio::time::interval(ADVERT_INTERVAL); + let mut sync_timer = tokio::time::interval(SYNC_INTERVAL); + advert_timer.tick().await; // skip first immediate tick + sync_timer.tick().await; + + loop { + tokio::select! { + // Check for incoming frames + frame_result = device.try_recv_frame() => { + match frame_result { + Ok(Some(frame)) => { + let should_action = handle_frame( + &frame, + state, + our_x25519_secret, + ).await; + if should_action { + // Contact discovery or messages waiting — sync both + refresh_contacts(&mut device, state).await; + sync_queued_messages(&mut device, state, our_x25519_secret).await; + } + } + Ok(None) => { + // No complete frame yet, that's fine + tokio::time::sleep(Duration::from_millis(50)).await; + } + Err(e) => { + error!("Serial read error: {}", e); + return Err(e); + } + } + } + + // Periodic advertisement broadcast + contact refresh + _ = advert_timer.tick() => { + debug!("Periodic self-advert broadcast"); + if let Err(e) = device.send_self_advert().await { + warn!("Failed to send advert: {}", e); + } + refresh_contacts(&mut device, state).await; + } + + // Process send commands from MeshService + Some(cmd) = cmd_rx.recv() => { + match cmd { + MeshCommand::SendText { dest_pubkey_prefix, payload } => { + if let Err(e) = device.send_text(&dest_pubkey_prefix, &payload).await { + warn!("Failed to send text via mesh: {}", e); + } else { + info!(dest = %hex::encode(dest_pubkey_prefix), len = payload.len(), "Sent mesh message"); + } + } + MeshCommand::SendAdvert => { + if let Err(e) = device.send_self_advert().await { + warn!("Failed to send advert: {}", e); + } + } + } + } + + // Periodic message sync + _ = sync_timer.tick() => { + sync_queued_messages(&mut device, state, our_x25519_secret).await; + } + + // Shutdown signal + _ = shutdown.changed() => { + if *shutdown.borrow() { + info!("Mesh listener received shutdown signal"); + return Ok(()); + } + } + } + } +} + +/// Handle a single inbound frame from the device. +/// Returns `true` if contacts should be refreshed from the device. +async fn handle_frame( + frame: &protocol::InboundFrame, + state: &Arc, + our_x25519_secret: &[u8; 32], +) -> bool { + match frame.code { + protocol::PUSH_NEW_CONTACT | protocol::PUSH_CONTACT_ADVERT => { + info!(code = frame.code, "Contact discovery event — refreshing contacts"); + return true; // Signal caller to fetch contacts + } + + protocol::PUSH_ACK => { + debug!("Message delivery confirmed"); + // Could track which message was ACKed from frame.data + } + + protocol::PUSH_MESSAGES_WAITING => { + info!("Device has messages waiting — will sync"); + return true; // Signal caller to sync immediately + } + + protocol::RESP_CONTACT_MSG_V3 => { + // Direct message received (v3 format) + match protocol::parse_contact_msg_v3(&frame.data) { + Ok((sender_prefix, text, _snr)) => { + if !text.is_empty() { + let peer_name = { + let peers = state.peers.read().await; + peers.values() + .find(|p| p.pubkey_hex.as_ref().map(|k| k.starts_with(&sender_prefix)).unwrap_or(false)) + .map(|p| (p.contact_id, p.advert_name.clone())) + }; + let (contact_id, name) = peer_name.unwrap_or((0, sender_prefix.clone())); + + let msg_id = state.next_id().await; + let msg = MeshMessage { + id: msg_id, + direction: MessageDirection::Received, + peer_contact_id: contact_id, + peer_name: Some(name), + plaintext: text, + timestamp: chrono::Utc::now().to_rfc3339(), + delivered: true, + encrypted: false, + }; + state.store_message(msg.clone()).await; + state.status.write().await.messages_received += 1; + info!(from = %sender_prefix, "Received mesh DM (v3)"); + let _ = state.event_tx.send(MeshEvent::MessageReceived(msg)); + } + } + Err(e) => warn!("Failed to parse v3 message: {}", e), + } + } + + protocol::RESP_CONTACT_MSG => { + // Direct message received (v1 format) + match protocol::parse_contact_msg_v1(&frame.data) { + Ok((sender_prefix, text)) => { + if !text.is_empty() { + let peer_name = { + let peers = state.peers.read().await; + peers.values() + .find(|p| p.pubkey_hex.as_ref().map(|k| k.starts_with(&sender_prefix)).unwrap_or(false)) + .map(|p| (p.contact_id, p.advert_name.clone())) + }; + let (contact_id, name) = peer_name.unwrap_or((0, sender_prefix.clone())); + + let msg_id = state.next_id().await; + let msg = MeshMessage { + id: msg_id, + direction: MessageDirection::Received, + peer_contact_id: contact_id, + peer_name: Some(name), + plaintext: text, + timestamp: chrono::Utc::now().to_rfc3339(), + delivered: true, + encrypted: false, + }; + state.store_message(msg.clone()).await; + state.status.write().await.messages_received += 1; + info!(from = %sender_prefix, "Received mesh DM (v1)"); + let _ = state.event_tx.send(MeshEvent::MessageReceived(msg)); + } + } + Err(e) => warn!("Failed to parse v1 message: {}", e), + } + } + + protocol::RESP_CHANNEL_MSG_V3 => { + // Channel broadcast received (v3) + match protocol::parse_channel_msg_v3(&frame.data) { + Ok((channel_idx, text)) => { + if !text.is_empty() { + let msg_id = state.next_id().await; + let chan_contact_id = -((channel_idx as i32) + 1); + let msg = MeshMessage { + id: msg_id, + direction: MessageDirection::Received, + peer_contact_id: chan_contact_id as u32, + peer_name: Some(format!("Channel {}", channel_idx)), + plaintext: text, + timestamp: chrono::Utc::now().to_rfc3339(), + delivered: true, + encrypted: false, + }; + state.store_message(msg.clone()).await; + state.status.write().await.messages_received += 1; + info!(channel = channel_idx, "Received mesh channel message (v3)"); + let _ = state.event_tx.send(MeshEvent::MessageReceived(msg)); + } + } + Err(e) => warn!("Failed to parse v3 channel message: {}", e), + } + } + + protocol::RESP_CHANNEL_MSG => { + // Channel broadcast received (v1) + match protocol::parse_channel_msg_v1(&frame.data) { + Ok((channel_idx, text)) => { + if !text.is_empty() { + let msg_id = state.next_id().await; + let chan_contact_id = -((channel_idx as i32) + 1); + let msg = MeshMessage { + id: msg_id, + direction: MessageDirection::Received, + peer_contact_id: chan_contact_id as u32, + peer_name: Some(format!("Channel {}", channel_idx)), + plaintext: text, + timestamp: chrono::Utc::now().to_rfc3339(), + delivered: true, + encrypted: false, + }; + state.store_message(msg.clone()).await; + state.status.write().await.messages_received += 1; + info!(channel = channel_idx, "Received mesh channel message"); + let _ = state.event_tx.send(MeshEvent::MessageReceived(msg)); + } + } + Err(e) => warn!("Failed to parse channel message: {}", e), + } + } + + protocol::PUSH_LOG_DATA | protocol::PUSH_PATH_UPDATE | protocol::PUSH_RAW_DATA => { + // Internal device logging/path data — safe to ignore + } + + _ => { + if protocol::is_push_notification(frame.code) { + debug!(code = frame.code, "Unhandled push notification"); + } + } + } + false +} + +/// Handle a received identity broadcast from a peer. +async fn handle_identity_received( + contact_id: u32, + rssi: i16, + did: &str, + ed_pubkey_hex: &str, + x25519_pubkey_hex: &str, + state: &Arc, + our_x25519_secret: &[u8; 32], +) { + info!( + contact_id, + did = %did, + rssi, + "Archipelago peer discovered over mesh" + ); + + // Decode X25519 public key + let x25519_bytes = match hex::decode(x25519_pubkey_hex) { + Ok(b) if b.len() == 32 => { + let mut arr = [0u8; 32]; + arr.copy_from_slice(&b); + arr + } + _ => { + warn!("Invalid X25519 public key from peer"); + return; + } + }; + + // Derive shared secret for encrypted messaging + let shared_secret = crypto::x25519_shared_secret(our_x25519_secret, &x25519_bytes); + state + .shared_secrets + .write() + .await + .insert(contact_id, shared_secret); + + // Update peer record + let peer = MeshPeer { + contact_id, + advert_name: format!("Archy-{}", &did[8..16.min(did.len())]), + did: Some(did.to_string()), + pubkey_hex: Some(ed_pubkey_hex.to_string()), + x25519_pubkey: Some(x25519_bytes), + rssi: Some(rssi), + snr: None, + last_heard: chrono::Utc::now().to_rfc3339(), + hops: 0, + }; + + let is_new = { + let mut peers = state.peers.write().await; + let is_new = !peers.contains_key(&contact_id); + peers.insert(contact_id, peer.clone()); + is_new + }; + state.update_peer_count().await; + + let event = if is_new { + MeshEvent::PeerDiscovered(peer) + } else { + MeshEvent::PeerUpdated(peer) + }; + let _ = state.event_tx.send(event); + let _ = state.event_tx.send(MeshEvent::IdentityReceived { + contact_id, + did: did.to_string(), + pubkey_hex: ed_pubkey_hex.to_string(), + x25519_pubkey: x25519_bytes, + }); +} + +/// Handle a received message (direct or channel). +async fn handle_received_message( + contact_id: u32, + payload: &[u8], + rssi: i16, + is_channel: bool, + state: &Arc, + _our_x25519_secret: &[u8; 32], +) { + // Try to decrypt if we have a shared secret for this contact + let shared_secrets = state.shared_secrets.read().await; + let (plaintext, encrypted) = if let Some(secret) = shared_secrets.get(&contact_id) { + match crypto::decrypt(secret, payload) { + Ok(pt) => (String::from_utf8_lossy(&pt).to_string(), true), + Err(_) => { + // Not encrypted or wrong key — treat as plaintext + (String::from_utf8_lossy(payload).to_string(), false) + } + } + } else { + (String::from_utf8_lossy(payload).to_string(), false) + }; + drop(shared_secrets); + + // Update peer last_heard + { + let mut peers = state.peers.write().await; + if let Some(peer) = peers.get_mut(&contact_id) { + peer.last_heard = chrono::Utc::now().to_rfc3339(); + peer.rssi = Some(rssi); + } + } + + let peer_name = state + .peers + .read() + .await + .get(&contact_id) + .map(|p| p.advert_name.clone()); + + let msg_id = state.next_id().await; + let msg = MeshMessage { + id: msg_id, + direction: MessageDirection::Received, + peer_contact_id: contact_id, + peer_name, + plaintext: plaintext.clone(), + timestamp: chrono::Utc::now().to_rfc3339(), + delivered: true, + encrypted, + }; + + state.store_message(msg.clone()).await; + { + let mut status = state.status.write().await; + status.messages_received += 1; + } + + info!( + contact_id, + encrypted, + channel = is_channel, + "Received mesh message" + ); + + let _ = state.event_tx.send(MeshEvent::MessageReceived(msg)); +} + +/// Drain any queued messages from the device. +async fn sync_queued_messages( + device: &mut MeshcoreDevice, + state: &Arc, + our_x25519_secret: &[u8; 32], +) { + match device.sync_messages().await { + Ok(frames) => { + for frame in &frames { + handle_frame(frame, state, our_x25519_secret).await; + } + if !frames.is_empty() { + info!(count = frames.len(), "Synced queued mesh messages"); + } + } + Err(e) => { + debug!("Message sync: {}", e); + } + } +} + +/// Fetch the contacts list from the device and update the peer cache. +async fn refresh_contacts( + device: &mut MeshcoreDevice, + state: &Arc, +) { + match device.get_contacts().await { + Ok(contacts) => { + let mut peers = state.peers.write().await; + for (idx, contact) in contacts.iter().enumerate() { + let contact_id = idx as u32; + let existing = peers.get(&contact_id); + let peer = MeshPeer { + contact_id, + advert_name: contact.advert_name.clone(), + did: existing.and_then(|p| p.did.clone()), + pubkey_hex: Some(contact.public_key_hex.clone()), + x25519_pubkey: existing.and_then(|p| p.x25519_pubkey), + rssi: None, + snr: None, + last_heard: chrono::Utc::now().to_rfc3339(), + hops: 0, + }; + peers.insert(contact_id, peer); + } + drop(peers); + state.update_peer_count().await; + if !contacts.is_empty() { + info!(count = contacts.len(), "Refreshed mesh contacts"); + } + } + Err(e) => { + warn!("Failed to fetch contacts: {}", e); + } + } +} diff --git a/core/archipelago/src/mesh/mod.rs b/core/archipelago/src/mesh/mod.rs new file mode 100644 index 00000000..2ddd01e8 --- /dev/null +++ b/core/archipelago/src/mesh/mod.rs @@ -0,0 +1,401 @@ +//! Mesh networking: Meshcore LoRa radio integration for offline peer discovery +//! and encrypted messaging between Archipelago nodes. +//! +//! Supports Meshcore firmware on Heltec V3, T-Beam, RAK WisBlock, Station G2, +//! and other ESP32/nRF52-based LoRa boards via USB serial (Companion USB mode). + +#[allow(dead_code)] +pub mod crypto; +#[allow(dead_code)] +pub mod listener; +#[allow(dead_code)] +pub mod protocol; +#[allow(dead_code)] +pub mod serial; +#[allow(dead_code)] +pub mod types; + +pub use types::*; + +use anyhow::{Context, Result}; +use ed25519_dalek::SigningKey; +use listener::MeshState; +use serde::{Deserialize, Serialize}; +use std::path::{Path, PathBuf}; +use std::sync::Arc; +use tokio::fs; +use tokio::sync::{broadcast, watch}; +use tracing::info; + +const MESH_CONFIG_FILE: &str = "mesh-config.json"; + +/// Mesh configuration (persisted to disk). +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct MeshConfig { + pub enabled: bool, + /// Specific device path, or None for auto-detection. + #[serde(default)] + pub device_path: Option, + /// Channel name for broadcasts. + #[serde(default)] + pub channel_name: Option, + /// Whether to periodically broadcast our identity. + #[serde(default)] + pub broadcast_identity: bool, + /// Custom advertised name on the mesh network. + #[serde(default)] + pub advert_name: Option, + /// Off-grid mode: disable Tor/internet, route everything via mesh only. + #[serde(default)] + pub mesh_only_mode: Option, +} + +impl Default for MeshConfig { + fn default() -> Self { + Self { + enabled: false, + device_path: None, + channel_name: Some("archipelago".to_string()), + broadcast_identity: true, + advert_name: None, + mesh_only_mode: None, + } + } +} + +pub async fn load_config(data_dir: &Path) -> Result { + let path = data_dir.join(MESH_CONFIG_FILE); + if !path.exists() { + return Ok(MeshConfig::default()); + } + let content = fs::read_to_string(&path) + .await + .context("Failed to read mesh config")?; + let config: MeshConfig = serde_json::from_str(&content).unwrap_or_default(); + Ok(config) +} + +pub async fn save_config(data_dir: &Path, config: &MeshConfig) -> Result<()> { + fs::create_dir_all(data_dir) + .await + .context("Failed to create data dir")?; + let content = + serde_json::to_string_pretty(config).context("Failed to serialize mesh config")?; + fs::write(data_dir.join(MESH_CONFIG_FILE), content) + .await + .context("Failed to write mesh config")?; + Ok(()) +} + +/// Detect serial devices that could be mesh radios. +/// Checks both Meshcore (via probe) and legacy Meshtastic paths. +pub async fn detect_devices() -> Vec { + serial::detect_serial_devices().await +} + +// ─── MeshService ──────────────────────────────────────────────────────── + +/// Top-level mesh networking service. +/// Manages the background listener, exposes APIs for RPC handlers. +pub struct MeshService { + state: Arc, + config: MeshConfig, + data_dir: PathBuf, + shutdown_tx: Option>, + listener_handle: Option>, + cmd_rx: Option>, + // Crypto identity for this node + our_did: String, + our_ed_pubkey_hex: String, + our_x25519_secret: [u8; 32], + our_x25519_pubkey_hex: String, +} + +#[allow(dead_code)] +impl MeshService { + /// Create a new MeshService. Does not start the listener yet. + pub async fn new( + data_dir: &Path, + signing_key: &SigningKey, + did: &str, + ed_pubkey_hex: &str, + ) -> Result { + let config = load_config(data_dir).await?; + let channel_name = config + .channel_name + .clone() + .unwrap_or_else(|| "archipelago".to_string()); + + let (state, _rx, cmd_rx) = MeshState::new(&channel_name); + + // Derive X25519 keys from Ed25519 identity + let x25519_secret = crypto::ed25519_secret_to_x25519(signing_key); + let x25519_pubkey = crypto::ed25519_pubkey_to_x25519( + &signing_key.verifying_key().to_bytes(), + )?; + let x25519_pubkey_hex = hex::encode(x25519_pubkey); + + Ok(Self { + state, + config, + data_dir: data_dir.to_path_buf(), + shutdown_tx: None, + listener_handle: None, + cmd_rx: Some(cmd_rx), + our_did: did.to_string(), + our_ed_pubkey_hex: ed_pubkey_hex.to_string(), + our_x25519_secret: x25519_secret, + our_x25519_pubkey_hex: x25519_pubkey_hex, + }) + } + + /// Start the background mesh listener. + pub fn start(&mut self) -> Result<()> { + if self.listener_handle.is_some() { + anyhow::bail!("Mesh listener already running"); + } + + let (shutdown_tx, shutdown_rx) = watch::channel(false); + self.shutdown_tx = Some(shutdown_tx); + + let cmd_rx = self.cmd_rx.take() + .ok_or_else(|| anyhow::anyhow!("Command channel already consumed"))?; + + let handle = listener::spawn_mesh_listener( + Arc::clone(&self.state), + self.config.device_path.clone(), + self.our_did.clone(), + self.our_ed_pubkey_hex.clone(), + self.our_x25519_secret, + self.our_x25519_pubkey_hex.clone(), + shutdown_rx, + cmd_rx, + ); + self.listener_handle = Some(handle); + + info!("Mesh service started"); + Ok(()) + } + + /// Stop the background listener. + pub async fn stop(&mut self) { + if let Some(tx) = self.shutdown_tx.take() { + let _ = tx.send(true); + } + if let Some(handle) = self.listener_handle.take() { + let _ = handle.await; + } + info!("Mesh service stopped"); + } + + /// Get current mesh status. + pub async fn status(&self) -> MeshStatus { + self.state.status.read().await.clone() + } + + /// Get list of discovered peers. + pub async fn peers(&self) -> Vec { + self.state.peers.read().await.values().cloned().collect() + } + + /// Get message history. + pub async fn messages(&self, limit: Option) -> Vec { + let messages = self.state.messages.read().await; + let limit = limit.unwrap_or(MAX_MESSAGES_DEFAULT); + // Return in chronological order (oldest first) — take last N items + let len = messages.len(); + let skip = if len > limit { len - limit } else { 0 }; + messages.iter().skip(skip).cloned().collect() + } + + /// Send a message to a peer by contact_id. + /// Routes through the background listener which owns the serial port. + pub async fn send_message(&self, contact_id: u32, text: &str) -> Result { + let status = self.state.status.read().await; + if !status.device_connected { + anyhow::bail!("No mesh device connected"); + } + drop(status); + + // Look up the peer's public key to get the 6-byte prefix for addressing + let peers = self.state.peers.read().await; + let peer = peers + .get(&contact_id) + .ok_or_else(|| anyhow::anyhow!("Peer not found"))?; + let pubkey_hex = peer + .pubkey_hex + .as_ref() + .ok_or_else(|| anyhow::anyhow!("Peer has no public key"))?; + let pubkey_bytes = hex::decode(pubkey_hex) + .map_err(|_| anyhow::anyhow!("Invalid peer public key"))?; + if pubkey_bytes.len() < 6 { + anyhow::bail!("Peer public key too short"); + } + let mut dest_prefix = [0u8; 6]; + dest_prefix.copy_from_slice(&pubkey_bytes[..6]); + drop(peers); + + let payload = text.as_bytes().to_vec(); + let encrypted = false; + + if payload.len() > protocol::MAX_MESSAGE_LEN { + anyhow::bail!( + "Message too large for LoRa: {} bytes (max {})", + payload.len(), + protocol::MAX_MESSAGE_LEN + ); + } + + // Send through the listener's command channel + self.state + .cmd_tx + .send(listener::MeshCommand::SendText { + dest_pubkey_prefix: dest_prefix, + payload, + }) + .await + .map_err(|_| anyhow::anyhow!("Mesh listener not running"))?; + + let msg_id = self.state.next_id().await; + let peer_name = self + .state + .peers + .read() + .await + .get(&contact_id) + .map(|p| p.advert_name.clone()); + + let msg = MeshMessage { + id: msg_id, + direction: MessageDirection::Sent, + peer_contact_id: contact_id, + peer_name, + plaintext: text.to_string(), + timestamp: chrono::Utc::now().to_rfc3339(), + delivered: false, + encrypted, + }; + + self.state.store_message(msg.clone()).await; + { + let mut status = self.state.status.write().await; + status.messages_sent += 1; + } + + Ok(msg) + } + + /// Broadcast our advertisement over mesh so other nodes can discover us. + /// Sends an immediate advert via the listener's command channel. + pub async fn broadcast_identity(&self) -> Result<()> { + let status = self.state.status.read().await; + if !status.device_connected { + anyhow::bail!("No mesh device connected. Check USB connection."); + } + drop(status); + + self.state + .cmd_tx + .send(listener::MeshCommand::SendAdvert) + .await + .map_err(|_| anyhow::anyhow!("Mesh listener not running"))?; + + info!("Mesh self-advert broadcast triggered"); + Ok(()) + } + + /// Update mesh configuration. + pub async fn configure(&mut self, config: MeshConfig) -> Result<()> { + save_config(&self.data_dir, &config).await?; + + let was_enabled = self.config.enabled; + self.config = config.clone(); + + // Update the status to reflect new config + { + let mut status = self.state.status.write().await; + status.enabled = config.enabled; + status.channel_name = config.channel_name.clone().unwrap_or_else(|| "archipelago".to_string()); + } + + // If enabled state changed, start/stop the listener + if config.enabled && !was_enabled { + self.start()?; + } else if !config.enabled && was_enabled { + self.stop().await; + // Clear connected state + let mut status = self.state.status.write().await; + status.device_connected = false; + status.device_path = None; + status.firmware_version = None; + status.self_node_id = None; + status.peer_count = 0; + } + + Ok(()) + } + + /// Subscribe to mesh events. + pub fn subscribe(&self) -> broadcast::Receiver { + self.state.event_tx.subscribe() + } + + /// Get a reference to shared state (for RPC handlers). + pub fn shared_state(&self) -> Arc { + Arc::clone(&self.state) + } +} + +const MAX_MESSAGES_DEFAULT: usize = 100; + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_mesh_config_default() { + let config = MeshConfig::default(); + assert!(!config.enabled); + assert_eq!(config.channel_name, Some("archipelago".to_string())); + assert!(config.broadcast_identity); + } + + #[test] + fn test_mesh_config_serialization() { + let config = MeshConfig { + enabled: true, + device_path: Some("/dev/ttyUSB0".to_string()), + channel_name: Some("test".to_string()), + broadcast_identity: false, + advert_name: Some("MyNode".to_string()), + }; + let json = serde_json::to_string(&config).unwrap(); + let parsed: MeshConfig = serde_json::from_str(&json).unwrap(); + assert!(parsed.enabled); + assert_eq!(parsed.device_path, Some("/dev/ttyUSB0".to_string())); + assert_eq!(parsed.advert_name, Some("MyNode".to_string())); + } + + #[tokio::test] + async fn test_load_config_default_when_no_file() { + let dir = tempfile::tempdir().unwrap(); + let config = load_config(dir.path()).await.unwrap(); + assert!(!config.enabled); + } + + #[tokio::test] + async fn test_save_and_load_config_roundtrip() { + let dir = tempfile::tempdir().unwrap(); + let config = MeshConfig { + enabled: true, + device_path: Some("/dev/ttyUSB0".to_string()), + channel_name: Some("archy".to_string()), + broadcast_identity: true, + advert_name: None, + }; + save_config(dir.path(), &config).await.unwrap(); + let loaded = load_config(dir.path()).await.unwrap(); + assert!(loaded.enabled); + assert_eq!(loaded.device_path, Some("/dev/ttyUSB0".to_string())); + } +} diff --git a/core/archipelago/src/mesh/protocol.rs b/core/archipelago/src/mesh/protocol.rs new file mode 100644 index 00000000..f2f6a8f6 --- /dev/null +++ b/core/archipelago/src/mesh/protocol.rs @@ -0,0 +1,661 @@ +//! Meshcore binary frame protocol: constants, encoding, decoding, command builders. +//! +//! Frame format (USB serial): +//! - Outbound (host -> device): `<` (0x3C) + 2-byte LE length + frame data +//! - Inbound (device -> host): `>` (0x3E) + 2-byte LE length + frame data +//! - Baud: 115200, 8N1 +//! - Max message payload: 160 bytes + +use anyhow::Result; + +// --- Frame markers --- +pub const OUTBOUND_MARKER: u8 = 0x3C; // '<' (host -> device) +pub const INBOUND_MARKER: u8 = 0x3E; // '>' (device -> host) + +// --- Commands (host -> device) --- +pub const CMD_APP_START: u8 = 0x01; +pub const CMD_SEND_TXT_MSG: u8 = 0x02; +pub const CMD_SEND_CHANNEL_TXT_MSG: u8 = 0x03; +pub const CMD_GET_CONTACTS: u8 = 0x04; +pub const CMD_GET_DEVICE_TIME: u8 = 0x05; +pub const CMD_SET_DEVICE_TIME: u8 = 0x06; +pub const CMD_SEND_SELF_ADVERT: u8 = 0x07; +pub const CMD_SET_ADVERT_NAME: u8 = 0x08; +pub const CMD_SYNC_NEXT_MESSAGE: u8 = 0x0A; +pub const CMD_SET_RADIO_PARAMS: u8 = 0x0B; +pub const CMD_SET_RADIO_TX_POWER: u8 = 0x0C; +pub const CMD_SET_TUNING_PARAMS: u8 = 0x15; +pub const CMD_DEVICE_QUERY: u8 = 0x16; +pub const CMD_GET_CHANNEL: u8 = 0x1F; +pub const CMD_SET_CHANNEL: u8 = 0x20; +pub const CMD_GET_STATS: u8 = 0x38; + +// --- Response codes (device -> host, synchronous) --- +pub const RESP_OK: u8 = 0x00; +pub const RESP_ERR: u8 = 0x01; +pub const RESP_CONTACT_START: u8 = 0x02; +pub const RESP_CONTACT: u8 = 0x03; +pub const RESP_CONTACT_END: u8 = 0x04; +pub const RESP_SELF_INFO: u8 = 0x05; +pub const RESP_SENT: u8 = 0x06; +pub const RESP_CONTACT_MSG: u8 = 0x07; +pub const RESP_CHANNEL_MSG: u8 = 0x08; +pub const RESP_CURRENT_TIME: u8 = 0x09; +pub const RESP_NO_MORE_MESSAGES: u8 = 0x0A; +pub const RESP_CONTACT_URI: u8 = 0x0B; +pub const RESP_BATTERY: u8 = 0x0C; +pub const RESP_DEVICE_INFO: u8 = 0x0D; +pub const RESP_CONTACT_MSG_V3: u8 = 0x10; +pub const RESP_CHANNEL_MSG_V3: u8 = 0x11; +pub const RESP_CHANNEL_INFO: u8 = 0x12; +pub const RESP_STATS: u8 = 0x18; + +// --- Push notification codes (device -> host, async, >= 0x80) --- +pub const PUSH_CONTACT_ADVERT: u8 = 0x80; +pub const PUSH_PATH_UPDATE: u8 = 0x81; +pub const PUSH_ACK: u8 = 0x82; +pub const PUSH_MESSAGES_WAITING: u8 = 0x83; +pub const PUSH_RAW_DATA: u8 = 0x84; +pub const PUSH_LOG_DATA: u8 = 0x88; +pub const PUSH_NEW_CONTACT: u8 = 0x8A; + +// --- Error codes --- +pub const ERR_UNSUPPORTED_CMD: u8 = 0x01; +pub const ERR_NOT_FOUND: u8 = 0x02; +pub const ERR_TABLE_FULL: u8 = 0x03; +pub const ERR_BAD_STATE: u8 = 0x04; +pub const ERR_FILE_IO: u8 = 0x05; +pub const ERR_ILLEGAL_ARG: u8 = 0x06; + +/// Maximum payload size for a single LoRa message. +pub const MAX_MESSAGE_LEN: usize = 160; + +/// Minimum frame size: marker (1) + length (2) + command/response (1) = 4 bytes. +const MIN_FRAME_SIZE: usize = 4; + +/// Protocol version we advertise during handshake. +const PROTOCOL_VERSION: u8 = 3; + +// ─── Frame encoding ───────────────────────────────────────────────────── + +/// Encode a command frame for sending to the device. +/// Returns: `>` + 2-byte LE length + data +pub fn encode_frame(data: &[u8]) -> Vec { + let len = data.len() as u16; + let mut frame = Vec::with_capacity(3 + data.len()); + frame.push(OUTBOUND_MARKER); + frame.extend_from_slice(&len.to_le_bytes()); + frame.extend_from_slice(data); + frame +} + +/// Result of parsing one inbound frame from the device. +#[derive(Debug)] +pub struct InboundFrame { + /// Response or push notification code (first byte of payload). + pub code: u8, + /// Remaining payload after the code byte. + pub data: Vec, + /// Total bytes consumed from the buffer (for advancing read position). + pub bytes_consumed: usize, +} + +/// Try to parse one inbound frame from a buffer. +/// Returns `None` if the buffer doesn't contain a complete frame yet. +pub fn decode_frame(buf: &[u8]) -> Option { + if buf.len() < MIN_FRAME_SIZE { + return None; + } + + // Find the inbound marker + let start = buf.iter().position(|&b| b == INBOUND_MARKER)?; + let remaining = &buf[start..]; + + if remaining.len() < 3 { + return None; + } + + let len = u16::from_le_bytes([remaining[1], remaining[2]]) as usize; + let total = 3 + len; // marker + 2 length bytes + payload + + if remaining.len() < total { + return None; // incomplete frame + } + + if len == 0 { + return None; // empty payload is invalid + } + + let payload = &remaining[3..total]; + let code = payload[0]; + let data = payload[1..].to_vec(); + + Some(InboundFrame { + code, + data, + bytes_consumed: start + total, + }) +} + +// ─── Command builders ─────────────────────────────────────────────────── + +/// CMD_DEVICE_QUERY (0x16): Query device capabilities and negotiate protocol version. +pub fn build_device_query() -> Vec { + encode_frame(&[CMD_DEVICE_QUERY, PROTOCOL_VERSION]) +} + +/// CMD_APP_START (0x01): Initialize communication session. +/// Format matches official meshcore_py: [0x01][version][padded_name] +/// The official library sends: b"\x01\x03 mccli" +pub fn build_app_start(app_name: &str) -> Vec { + let mut data = vec![CMD_APP_START, PROTOCOL_VERSION]; + // Pad name to 6 chars minimum (matching official library behavior) + let name_bytes = app_name.as_bytes(); + let padded_len = name_bytes.len().max(6); + let len = padded_len.min(32); + // Pad with spaces if name is shorter than 6 chars + for i in 0..len { + if i < name_bytes.len() { + data.push(name_bytes[i]); + } else { + data.push(b' '); + } + } + encode_frame(&data) +} + +/// CMD_SET_DEVICE_TIME (0x06): Sync device clock with Unix timestamp. +pub fn build_set_device_time(unix_secs: u64) -> Vec { + let mut data = vec![CMD_SET_DEVICE_TIME]; + data.extend_from_slice(&(unix_secs as u32).to_le_bytes()); + encode_frame(&data) +} + +/// CMD_SET_ADVERT_NAME (0x08): Set the node's advertised name on the mesh. +pub fn build_set_advert_name(name: &str) -> Vec { + let mut data = vec![CMD_SET_ADVERT_NAME]; + let name_bytes = name.as_bytes(); + let len = name_bytes.len().min(32); + data.extend_from_slice(&name_bytes[..len]); + encode_frame(&data) +} + +/// CMD_SEND_TXT_MSG (0x02): Send a text message to a specific contact. +/// Destination is the first 6 bytes of the contact's public key (hex decoded). +/// Format: 0x02 + 0x00 (txt_type) + attempt(1B) + timestamp(4B LE) + dest_prefix(6B) + text +pub fn build_send_text(dest_pubkey_prefix: &[u8; 6], msg: &[u8]) -> Result> { + if msg.len() > MAX_MESSAGE_LEN { + anyhow::bail!( + "Message too large for LoRa: {} bytes (max {})", + msg.len(), + MAX_MESSAGE_LEN + ); + } + let timestamp = std::time::SystemTime::now() + .duration_since(std::time::UNIX_EPOCH) + .unwrap_or_default() + .as_secs() as u32; + + let mut data = vec![CMD_SEND_TXT_MSG, 0x00, 0x00]; // cmd + txt_type=0 + attempt=0 + data.extend_from_slice(×tamp.to_le_bytes()); + data.extend_from_slice(dest_pubkey_prefix); + data.extend_from_slice(msg); + Ok(encode_frame(&data)) +} + +/// CMD_SEND_CHANNEL_TXT_MSG (0x03): Broadcast a text message on a channel. +pub fn build_send_channel_text(channel: u8, msg: &[u8]) -> Result> { + if msg.len() > MAX_MESSAGE_LEN { + anyhow::bail!( + "Message too large for LoRa: {} bytes (max {})", + msg.len(), + MAX_MESSAGE_LEN + ); + } + let mut data = vec![CMD_SEND_CHANNEL_TXT_MSG, channel]; + data.extend_from_slice(msg); + Ok(encode_frame(&data)) +} + +/// CMD_GET_CONTACTS (0x04): Request the contact list from the device. +pub fn build_get_contacts() -> Vec { + encode_frame(&[CMD_GET_CONTACTS]) +} + +/// CMD_SYNC_NEXT_MESSAGE (0x0A): Retrieve the next queued message. +pub fn build_sync_next_message() -> Vec { + encode_frame(&[CMD_SYNC_NEXT_MESSAGE]) +} + +/// CMD_SEND_SELF_ADVERT (0x07): Broadcast our advertisement to the mesh. +pub fn build_send_self_advert() -> Vec { + encode_frame(&[CMD_SEND_SELF_ADVERT]) +} + +/// CMD_GET_STATS (0x38): Request device statistics. +pub fn build_get_stats() -> Vec { + encode_frame(&[CMD_GET_STATS]) +} + +// ─── Response parsers ─────────────────────────────────────────────────── + +/// Parse RESP_DEVICE_INFO (0x0D) response. +/// Returns firmware version string and device capabilities. +pub fn parse_device_info(data: &[u8]) -> Result<(String, u16)> { + // Device info format varies by firmware version. + // Minimum: firmware version string (null-terminated) + max_contacts (u16 LE) + if data.is_empty() { + anyhow::bail!("Empty device info response"); + } + + // Find null terminator for version string, or use all data as version + let version_end = data.iter().position(|&b| b == 0).unwrap_or(data.len()); + let version = String::from_utf8_lossy(&data[..version_end]).to_string(); + + let max_contacts = if data.len() > version_end + 2 { + u16::from_le_bytes([data[version_end + 1], data[version_end + 2]]) + } else { + 100 // default + }; + + Ok((version, max_contacts)) +} + +/// Parse RESP_SELF_INFO (0x05) response. +/// Returns (node_id, advert_name). +pub fn parse_self_info(data: &[u8]) -> Result<(u32, String)> { + if data.len() < 4 { + anyhow::bail!("Self info response too short: {} bytes", data.len()); + } + + let node_id = u32::from_le_bytes([data[0], data[1], data[2], data[3]]); + + // Name follows after fixed fields — find it by scanning for printable ASCII + let name_start = 4; + let name = if data.len() > name_start { + let name_end = data[name_start..] + .iter() + .position(|&b| b == 0) + .map(|p| name_start + p) + .unwrap_or(data.len()); + String::from_utf8_lossy(&data[name_start..name_end]).to_string() + } else { + String::new() + }; + + Ok((node_id, name)) +} + +/// Parsed contact from RESP_CONTACT (0x03). +pub struct ParsedContact { + pub public_key_hex: String, + pub advert_name: String, + pub last_advert: u32, + pub contact_type: u8, +} + +/// Parse RESP_CONTACT (0x03) response. +/// Format: 32B pubkey + 1B type + 1B flags + 1B path_len + 64B path + 32B name + 4B last_advert + 4B lat + 4B lon + 4B lastmod +pub fn parse_contact(data: &[u8]) -> Result { + if data.len() < 34 { + anyhow::bail!("Contact response too short: {} bytes (need >= 34)", data.len()); + } + + let public_key_hex = hex::encode(&data[0..32]); + let contact_type = data[32]; + // flags at data[33], path_len at data[34] + // path at data[35..99] (64 bytes) + // name at data[99..131] (32 bytes) + let name_start = 99.min(data.len()); + let name_end = (name_start + 32).min(data.len()); + let advert_name = if data.len() > name_start { + String::from_utf8_lossy(&data[name_start..name_end]) + .trim_end_matches('\0') + .to_string() + } else { + format!("{}...", &public_key_hex[..8]) + }; + + // last_advert at data[131..135] + let last_advert = if data.len() >= 135 { + u32::from_le_bytes([data[131], data[132], data[133], data[134]]) + } else { + 0 + }; + + Ok(ParsedContact { + public_key_hex, + advert_name, + last_advert, + contact_type, + }) +} + +/// Parse RESP_CONTACT_MSG_V3 (0x10) - private message. +/// Format: SNR(1B) + reserved(2B) + pubkey_prefix(6B) + path_len(1B) + txt_type(1B) + timestamp(4B) + [sig(4B) if txt_type==2] + text +/// Returns (sender_pubkey_prefix_hex, text, snr). +pub fn parse_contact_msg_v3(data: &[u8]) -> Result<(String, String, i8)> { + if data.len() < 15 { + anyhow::bail!("Contact message too short: {} bytes", data.len()); + } + let snr = data[0] as i8; + // data[1..3] reserved + let pubkey_prefix = hex::encode(&data[3..9]); + // data[9] = path_len + let txt_type = data[10]; + // data[11..15] = timestamp + let text_start = if txt_type == 2 { 19 } else { 15 }; // skip 4-byte signature if txt_type==2 + let text = if data.len() > text_start { + String::from_utf8_lossy(&data[text_start..]).to_string() + } else { + String::new() + }; + Ok((pubkey_prefix, text, snr)) +} + +/// Parse RESP_CHANNEL_MSG_V3 (0x11) - channel message. +/// Format: channel_idx(1B) + path_len(1B) + txt_type(1B) + timestamp(4B) + text +/// Returns (channel_idx, text). +pub fn parse_channel_msg_v3(data: &[u8]) -> Result<(u8, String)> { + if data.len() < 7 { + anyhow::bail!("Channel message too short: {} bytes", data.len()); + } + let channel_idx = data[0]; + // data[1] = path_len, data[2] = txt_type + // data[3..7] = timestamp + let text = if data.len() > 7 { + String::from_utf8_lossy(&data[7..]).trim_end_matches('\0').to_string() + } else { + String::new() + }; + Ok((channel_idx, text)) +} + +/// Parse RESP_CONTACT_MSG (0x07) - v1 private message. +/// Format: pubkey_prefix(6B) + path_len(1B) + txt_type(1B) + timestamp(4B) + [sig(4B) if txt_type==2] + text +/// Returns (sender_pubkey_prefix_hex, text). +pub fn parse_contact_msg_v1(data: &[u8]) -> Result<(String, String)> { + if data.len() < 12 { + anyhow::bail!("Contact message v1 too short: {} bytes", data.len()); + } + let pubkey_prefix = hex::encode(&data[0..6]); + // data[6] = path_len, data[7] = txt_type + let txt_type = data[7]; + // data[8..12] = timestamp + let text_start = if txt_type == 2 { 16 } else { 12 }; + let text = if data.len() > text_start { + String::from_utf8_lossy(&data[text_start..]).to_string() + } else { + String::new() + }; + Ok((pubkey_prefix, text)) +} + +/// Parse RESP_CHANNEL_MSG (0x08) - v1 channel message. +/// Format: channel_idx(1B) + path_len(1B) + txt_type(1B) + timestamp(4B) + text +pub fn parse_channel_msg_v1(data: &[u8]) -> Result<(u8, String)> { + if data.len() < 7 { + anyhow::bail!("Channel message v1 too short: {} bytes", data.len()); + } + let channel_idx = data[0]; + // data[1] = path_len, data[2] = txt_type + // data[3..7] = timestamp + let text = if data.len() > 7 { + String::from_utf8_lossy(&data[7..]).trim_end_matches('\0').to_string() + } else { + String::new() + }; + Ok((channel_idx, text)) +} + +/// Parse RESP_ERR (0x01). Returns descriptive error string. +pub fn parse_error(data: &[u8]) -> String { + if data.is_empty() { + return "Unknown device error".to_string(); + } + match data[0] { + ERR_UNSUPPORTED_CMD => "Unsupported command".to_string(), + ERR_NOT_FOUND => "Not found".to_string(), + ERR_TABLE_FULL => "Contact table full".to_string(), + ERR_BAD_STATE => "Bad device state".to_string(), + ERR_FILE_IO => "Device file I/O error".to_string(), + ERR_ILLEGAL_ARG => "Illegal argument".to_string(), + code => format!("Device error code 0x{:02x}", code), + } +} + +/// Check if a response code is a push notification (async event from device). +pub fn is_push_notification(code: u8) -> bool { + code >= 0x80 +} + +// ─── Archipelago identity wire format ─────────────────────────────────── + +/// Prefix for Archipelago identity broadcasts over mesh channel. +pub const ARCHY_IDENTITY_PREFIX: &str = "ARCHY:1:"; + +/// Encode an Archipelago identity announcement for channel broadcast. +/// Compact format: `ARCHY:2:{ed25519_pubkey_hex}:{x25519_pubkey_hex}` +/// DID is omitted to fit within 160-byte LoRa limit — receiver reconstructs did:key from ed25519 pubkey. +/// Total: 8 + 64 + 1 + 64 = 137 bytes (fits in 160). +pub fn encode_identity_broadcast(_did: &str, ed_pubkey_hex: &str, x25519_pubkey_hex: &str) -> String { + format!("ARCHY:2:{}:{}", ed_pubkey_hex, x25519_pubkey_hex) +} + +/// Try to parse an Archipelago identity from a received channel message. +/// Returns (did, ed25519_pubkey_hex, x25519_pubkey_hex) if valid. +/// +/// Supports two formats: +/// - v2 (compact): `ARCHY:2:{ed25519_hex_64}:{x25519_hex_64}` — DID reconstructed from ed25519 +/// - v1 (legacy): `ARCHY:1:{did}:{ed25519_hex_64}:{x25519_hex_64}` +pub fn parse_identity_broadcast(msg: &str) -> Option<(String, String, String)> { + // Try v2 compact format first + if let Some(rest) = msg.strip_prefix("ARCHY:2:") { + let parts: Vec<&str> = rest.splitn(2, ':').collect(); + if parts.len() != 2 { + return None; + } + let ed_pubkey = parts[0]; + let x25519_pubkey = parts[1]; + if ed_pubkey.len() != 64 || x25519_pubkey.len() != 64 { + return None; + } + if !ed_pubkey.chars().all(|c| c.is_ascii_hexdigit()) + || !x25519_pubkey.chars().all(|c| c.is_ascii_hexdigit()) + { + return None; + } + // Reconstruct DID from ed25519 pubkey + let did = crate::identity::did_key_from_pubkey_hex(ed_pubkey).ok()?; + return Some((did, ed_pubkey.to_string(), x25519_pubkey.to_string())); + } + + // Try v1 legacy format + let rest = msg.strip_prefix(ARCHY_IDENTITY_PREFIX)?; + let last_colon = rest.rfind(':')?; + let x25519_pubkey = &rest[last_colon + 1..]; + if x25519_pubkey.len() != 64 || !x25519_pubkey.chars().all(|c| c.is_ascii_hexdigit()) { + return None; + } + let before_x25519 = &rest[..last_colon]; + let second_last_colon = before_x25519.rfind(':')?; + let ed_pubkey = &before_x25519[second_last_colon + 1..]; + if ed_pubkey.len() != 64 || !ed_pubkey.chars().all(|c| c.is_ascii_hexdigit()) { + return None; + } + let did = &before_x25519[..second_last_colon]; + if !did.starts_with("did:key:z") { + return None; + } + Some((did.to_string(), ed_pubkey.to_string(), x25519_pubkey.to_string())) +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_encode_frame() { + let frame = encode_frame(&[CMD_DEVICE_QUERY, PROTOCOL_VERSION]); + assert_eq!(frame[0], OUTBOUND_MARKER); + assert_eq!(u16::from_le_bytes([frame[1], frame[2]]), 2); + assert_eq!(frame[3], CMD_DEVICE_QUERY); + assert_eq!(frame[4], PROTOCOL_VERSION); + } + + #[test] + fn test_decode_frame_complete() { + // Simulate an inbound frame: < + len(2) + [RESP_OK] + let buf = vec![INBOUND_MARKER, 0x01, 0x00, RESP_OK]; + let frame = decode_frame(&buf).expect("should parse"); + assert_eq!(frame.code, RESP_OK); + assert!(frame.data.is_empty()); + assert_eq!(frame.bytes_consumed, 4); + } + + #[test] + fn test_decode_frame_with_data() { + // < + len(5) + [RESP_SELF_INFO, 0x01, 0x02, 0x03, 0x04] + let buf = vec![INBOUND_MARKER, 0x05, 0x00, RESP_SELF_INFO, 0x01, 0x02, 0x03, 0x04]; + let frame = decode_frame(&buf).expect("should parse"); + assert_eq!(frame.code, RESP_SELF_INFO); + assert_eq!(frame.data, vec![0x01, 0x02, 0x03, 0x04]); + assert_eq!(frame.bytes_consumed, 8); + } + + #[test] + fn test_decode_frame_incomplete() { + let buf = vec![INBOUND_MARKER, 0x05, 0x00, RESP_OK]; // says 5 bytes but only 1 + assert!(decode_frame(&buf).is_none()); + } + + #[test] + fn test_decode_frame_no_marker() { + let buf = vec![0xFF, 0x01, 0x00, RESP_OK]; + assert!(decode_frame(&buf).is_none()); + } + + #[test] + fn test_decode_frame_skips_garbage() { + // Garbage bytes before the actual frame + let buf = vec![0xFF, 0xAA, INBOUND_MARKER, 0x01, 0x00, RESP_OK]; + let frame = decode_frame(&buf).expect("should skip garbage"); + assert_eq!(frame.code, RESP_OK); + assert_eq!(frame.bytes_consumed, 6); // 2 garbage + 4 frame + } + + #[test] + fn test_build_device_query() { + let frame = build_device_query(); + assert_eq!(frame[0], OUTBOUND_MARKER); + assert_eq!(frame[3], CMD_DEVICE_QUERY); + assert_eq!(frame[4], PROTOCOL_VERSION); + } + + #[test] + fn test_build_app_start() { + let frame = build_app_start("Archipelago"); + assert_eq!(frame[3], CMD_APP_START); + let name = &frame[4..]; + assert_eq!(std::str::from_utf8(name).unwrap(), "Archipelago"); + } + + #[test] + fn test_build_set_device_time() { + let ts: u64 = 1710600000; + let frame = build_set_device_time(ts); + assert_eq!(frame[3], CMD_SET_DEVICE_TIME); + let time_bytes = &frame[4..8]; + assert_eq!( + u32::from_le_bytes([time_bytes[0], time_bytes[1], time_bytes[2], time_bytes[3]]), + ts as u32 + ); + } + + #[test] + fn test_build_send_text() { + let frame = build_send_text(42, b"hello").unwrap(); + assert_eq!(frame[3], CMD_SEND_TXT_MSG); + let cid = u32::from_le_bytes([frame[4], frame[5], frame[6], frame[7]]); + assert_eq!(cid, 42); + assert_eq!(&frame[8..], b"hello"); + } + + #[test] + fn test_build_send_text_too_large() { + let big = vec![0u8; MAX_MESSAGE_LEN + 1]; + assert!(build_send_text(1, &big).is_err()); + } + + #[test] + fn test_build_send_channel_text() { + let frame = build_send_channel_text(0, b"test").unwrap(); + assert_eq!(frame[3], CMD_SEND_CHANNEL_TXT_MSG); + assert_eq!(frame[4], 0); // channel 0 + assert_eq!(&frame[5..], b"test"); + } + + #[test] + fn test_identity_broadcast_roundtrip() { + let did = "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK"; + let ed_pub = "a".repeat(64); + let x25519_pub = "b".repeat(64); + + let encoded = encode_identity_broadcast(did, &ed_pub, &x25519_pub); + assert!(encoded.starts_with(ARCHY_IDENTITY_PREFIX)); + + let (parsed_did, parsed_ed, parsed_x) = parse_identity_broadcast(&encoded).unwrap(); + assert_eq!(parsed_did, did); + assert_eq!(parsed_ed, ed_pub); + assert_eq!(parsed_x, x25519_pub); + } + + #[test] + fn test_identity_broadcast_invalid() { + assert!(parse_identity_broadcast("not an identity").is_none()); + assert!(parse_identity_broadcast("ARCHY:1:bad").is_none()); + assert!(parse_identity_broadcast("ARCHY:1:did:key:z123:short:short").is_none()); + } + + #[test] + fn test_parse_error_codes() { + assert_eq!(parse_error(&[ERR_NOT_FOUND]), "Not found"); + assert_eq!(parse_error(&[ERR_TABLE_FULL]), "Contact table full"); + assert_eq!(parse_error(&[]), "Unknown device error"); + assert!(parse_error(&[0xFF]).contains("0xff")); + } + + #[test] + fn test_is_push_notification() { + assert!(is_push_notification(PUSH_NEW_CONTACT)); + assert!(is_push_notification(PUSH_ACK)); + assert!(is_push_notification(0x80)); + assert!(!is_push_notification(RESP_OK)); + assert!(!is_push_notification(RESP_DEVICE_INFO)); + } + + #[test] + fn test_parse_self_info() { + let mut data = vec![0x2A, 0x00, 0x00, 0x00]; // node_id = 42 + data.extend_from_slice(b"TestNode\0"); + let (id, name) = parse_self_info(&data).unwrap(); + assert_eq!(id, 42); + assert_eq!(name, "TestNode"); + } + + #[test] + fn test_parse_self_info_too_short() { + assert!(parse_self_info(&[0x01, 0x02]).is_err()); + } + + #[test] + fn test_parse_received_message() { + let mut data = vec![0x05, 0x00, 0x00, 0x00]; // contact_id = 5 + data.extend_from_slice(&(-75i16).to_le_bytes()); // rssi = -75 + data.extend_from_slice(b"hello mesh"); + let (cid, payload, rssi) = parse_received_message(&data).unwrap(); + assert_eq!(cid, 5); + assert_eq!(rssi, -75); + assert_eq!(payload, b"hello mesh"); + } +} diff --git a/core/archipelago/src/mesh/serial.rs b/core/archipelago/src/mesh/serial.rs new file mode 100644 index 00000000..b317e660 --- /dev/null +++ b/core/archipelago/src/mesh/serial.rs @@ -0,0 +1,378 @@ +//! Async serial driver for Meshcore devices. +//! +//! Handles opening the serial port, reading/writing frames, +//! and the initialization handshake sequence. + +use super::protocol::{self, InboundFrame}; +use super::types::DeviceInfo; +use anyhow::{Context, Result}; +use std::time::Duration; +use tracing::{debug, info, warn}; + +/// Serial port configuration for Meshcore Companion USB. +const BAUD_RATE: u32 = 115200; + +/// Timeout for reading a response frame from the device. +const READ_TIMEOUT: Duration = Duration::from_secs(5); + +/// Timeout for writing a frame to the device. +const WRITE_TIMEOUT: Duration = Duration::from_secs(2); + +/// Buffer size for serial reads. +const READ_BUF_SIZE: usize = 512; + +/// Application name sent during handshake. +const APP_NAME: &str = "Archipelago"; + +/// Async Meshcore device handle. +pub struct MeshcoreDevice { + port: serial2_tokio::SerialPort, + read_buf: Vec, + pub node_id: Option, + pub advert_name: Option, + pub device_info: Option, + device_path: String, +} + +impl MeshcoreDevice { + /// Open a serial port and verify it's a Meshcore device. + pub async fn open(path: &str) -> Result { + let port = serial2_tokio::SerialPort::open(path, BAUD_RATE) + .context(format!("Failed to open serial port {}", path))?; + + info!(path = %path, baud = BAUD_RATE, "Opened serial port"); + + Ok(Self { + port, + read_buf: Vec::with_capacity(READ_BUF_SIZE), + node_id: None, + advert_name: None, + device_info: None, + device_path: path.to_string(), + }) + } + + /// Run the Meshcore initialization handshake. + /// Matches the official meshcore_py library sequence: + /// 1. CMD_APP_START -> RESP_SELF_INFO (this is the first command, not device_query) + /// 2. CMD_SET_DEVICE_TIME (sync clock) + pub async fn initialize(&mut self) -> Result { + info!("Starting Meshcore handshake on {}", self.device_path); + + // Step 1: App start (the official library sends this first) + self.send_raw(&protocol::build_app_start(APP_NAME)).await?; + + let frame = self + .recv_frame_timeout(READ_TIMEOUT) + .await + .context("No response to APP_START — is this a Meshcore Companion USB device?")?; + + info!(code = frame.code, data_len = frame.data.len(), "Got response to APP_START"); + + if frame.code == protocol::RESP_ERR { + anyhow::bail!("App start failed: {}", protocol::parse_error(&frame.data)); + } + + // The response could be SELF_INFO or something else depending on firmware version + let (node_id, name) = if frame.code == protocol::RESP_SELF_INFO { + protocol::parse_self_info(&frame.data) + .context("Failed to parse self info")? + } else { + // Try to parse whatever we got + info!(code = frame.code, "Unexpected response code, trying to parse as self info"); + protocol::parse_self_info(&frame.data) + .unwrap_or((0, String::new())) + }; + + info!(node_id, name = %name, "Meshcore identity"); + + self.node_id = Some(node_id); + self.advert_name = Some(name.clone()); + + // Step 2: Sync device clock + let now = std::time::SystemTime::now() + .duration_since(std::time::UNIX_EPOCH) + .unwrap_or_default() + .as_secs(); + self.send_raw(&protocol::build_set_device_time(now)).await?; + // Time set response is best-effort — don't fail if it times out + match self.recv_frame_timeout(Duration::from_secs(2)).await { + Ok(frame) if frame.code == protocol::RESP_OK => { + debug!("Device clock synced"); + } + Ok(frame) => { + warn!(code = frame.code, "Unexpected response to SET_DEVICE_TIME"); + } + Err(_) => { + warn!("No response to SET_DEVICE_TIME (continuing anyway)"); + } + } + + let info = DeviceInfo { + firmware_version: name.clone(), + node_id, + max_contacts: 100, + device_type: super::types::DeviceType::Meshcore, + }; + self.device_info = Some(info.clone()); + + info!("Meshcore initialization complete on {}", self.device_path); + Ok(info) + } + + /// Set the advertised name on the mesh network. + pub async fn set_advert_name(&mut self, name: &str) -> Result<()> { + self.send_raw(&protocol::build_set_advert_name(name)).await?; + let frame = self.recv_frame_timeout(READ_TIMEOUT).await?; + if frame.code == protocol::RESP_ERR { + anyhow::bail!("Set advert name failed: {}", protocol::parse_error(&frame.data)); + } + self.advert_name = Some(name.to_string()); + Ok(()) + } + + /// Broadcast our advertisement to the mesh. + pub async fn send_self_advert(&mut self) -> Result<()> { + self.send_raw(&protocol::build_send_self_advert()).await?; + // Response is RESP_OK or RESP_SENT + let frame = self.recv_frame_timeout(READ_TIMEOUT).await?; + if frame.code == protocol::RESP_ERR { + anyhow::bail!("Self advert failed: {}", protocol::parse_error(&frame.data)); + } + Ok(()) + } + + /// Send a text message to a contact by their public key prefix (first 6 bytes). + pub async fn send_text(&mut self, dest_pubkey_prefix: &[u8; 6], msg: &[u8]) -> Result<()> { + let frame_data = protocol::build_send_text(dest_pubkey_prefix, msg)?; + self.send_raw(&frame_data).await?; + let frame = self.recv_frame_timeout(READ_TIMEOUT).await?; + if frame.code == protocol::RESP_ERR { + anyhow::bail!("Send text failed: {}", protocol::parse_error(&frame.data)); + } + Ok(()) + } + + /// Broadcast a text message on a channel. + pub async fn send_channel_text(&mut self, channel: u8, msg: &[u8]) -> Result<()> { + let frame_data = protocol::build_send_channel_text(channel, msg)?; + self.send_raw(&frame_data).await?; + let frame = self.recv_frame_timeout(READ_TIMEOUT).await?; + if frame.code == protocol::RESP_ERR { + anyhow::bail!( + "Channel broadcast failed: {}", + protocol::parse_error(&frame.data) + ); + } + Ok(()) + } + + /// Get the list of known contacts from the device. + /// Protocol: CMD_GET_CONTACTS -> CONTACT_START(count) -> N×CONTACT -> CONTACT_END + pub async fn get_contacts(&mut self) -> Result> { + self.send_raw(&protocol::build_get_contacts()).await?; + + let mut contacts = Vec::new(); + loop { + let frame = self.recv_frame_timeout(READ_TIMEOUT).await?; + match frame.code { + protocol::RESP_CONTACT_START => { + // Contains the count of contacts to follow + let count = if frame.data.len() >= 4 { + u32::from_le_bytes([frame.data[0], frame.data[1], frame.data[2], frame.data[3]]) + } else { + 0 + }; + debug!(count, "Contact list start"); + } + protocol::RESP_CONTACT => { + match protocol::parse_contact(&frame.data) { + Ok(contact) => contacts.push(contact), + Err(e) => warn!("Failed to parse contact: {}", e), + } + } + protocol::RESP_CONTACT_END => { + debug!(count = contacts.len(), "Contact list complete"); + break; + } + protocol::RESP_OK => break, + protocol::RESP_ERR => { + anyhow::bail!("Get contacts failed: {}", protocol::parse_error(&frame.data)); + } + _ => { + debug!(code = frame.code, "Unexpected response during contact list"); + // Don't break — might be a push notification interspersed + } + } + } + + Ok(contacts) + } + + /// Retrieve queued messages from the device. + /// Returns raw frames (code + data) for the listener to parse. + pub async fn sync_messages(&mut self) -> Result> { + self.send_raw(&protocol::build_sync_next_message()).await?; + + let mut frames = Vec::new(); + loop { + let frame = self.recv_frame_timeout(READ_TIMEOUT).await?; + match frame.code { + // All message types (v1 and v3) + protocol::RESP_CONTACT_MSG | protocol::RESP_CONTACT_MSG_V3 + | protocol::RESP_CHANNEL_MSG | protocol::RESP_CHANNEL_MSG_V3 => { + frames.push(frame); + // Request next message + self.send_raw(&protocol::build_sync_next_message()).await?; + } + protocol::RESP_NO_MORE_MESSAGES => break, + protocol::RESP_OK => break, + protocol::RESP_ERR => { + anyhow::bail!( + "Sync messages failed: {}", + protocol::parse_error(&frame.data) + ); + } + _ => { + // Push notifications can arrive during sync — skip them + if protocol::is_push_notification(frame.code) { + continue; + } + debug!(code = frame.code, "Unexpected response during message sync"); + break; + } + } + } + + Ok(frames) + } + + /// Write raw bytes to the serial port. + pub async fn send_raw(&mut self, data: &[u8]) -> Result<()> { + tokio::time::timeout(WRITE_TIMEOUT, self.port.write_all(data)) + .await + .context("Serial write timed out")? + .context("Serial write failed")?; + Ok(()) + } + + /// Try to read and parse one complete inbound frame. + /// Returns the frame if one is available, or reads more data from serial. + pub async fn try_recv_frame(&mut self) -> Result> { + // First check if we already have a complete frame in the buffer + if let Some(frame) = protocol::decode_frame(&self.read_buf) { + let consumed = frame.bytes_consumed; + let result = frame; + self.read_buf.drain(..consumed); + return Ok(Some(result)); + } + + // Try to read more data (non-blocking via small timeout) + let mut tmp = [0u8; READ_BUF_SIZE]; + match tokio::time::timeout(Duration::from_millis(50), self.port.read(&mut tmp)).await { + Ok(Ok(n)) if n > 0 => { + self.read_buf.extend_from_slice(&tmp[..n]); + } + _ => return Ok(None), + } + + // Try parsing again with new data + if let Some(frame) = protocol::decode_frame(&self.read_buf) { + let consumed = frame.bytes_consumed; + let result = frame; + self.read_buf.drain(..consumed); + return Ok(Some(result)); + } + + Ok(None) + } + + /// Read one complete inbound frame with timeout. + pub async fn recv_frame_timeout(&mut self, timeout: Duration) -> Result { + let deadline = tokio::time::Instant::now() + timeout; + + loop { + // Check buffer for a complete frame + if let Some(frame) = protocol::decode_frame(&self.read_buf) { + let consumed = frame.bytes_consumed; + let result = frame; + self.read_buf.drain(..consumed); + return Ok(result); + } + + // Read more data from serial + let remaining = deadline.saturating_duration_since(tokio::time::Instant::now()); + if remaining.is_zero() { + anyhow::bail!("Timeout waiting for serial frame"); + } + + let mut tmp = [0u8; READ_BUF_SIZE]; + match tokio::time::timeout(remaining.min(Duration::from_millis(100)), self.port.read(&mut tmp)) + .await + { + Ok(Ok(0)) => anyhow::bail!("Serial port closed"), + Ok(Ok(n)) => { + self.read_buf.extend_from_slice(&tmp[..n]); + } + Ok(Err(e)) => return Err(e).context("Serial read error"), + Err(_) => continue, // timeout on this read, try again if deadline not reached + } + } + } + + /// Get the device path this handle is connected to. + pub fn path(&self) -> &str { + &self.device_path + } +} + +// ─── Device detection ─────────────────────────────────────────────────── + +/// Candidate serial device paths to check on Linux. +const SERIAL_CANDIDATES: &[&str] = &[ + "/dev/ttyUSB0", + "/dev/ttyUSB1", + "/dev/ttyUSB2", + "/dev/ttyACM0", + "/dev/ttyACM1", + "/dev/ttyACM2", +]; + +/// Scan for serial devices that could be Meshcore radios. +/// Returns paths to existing serial device files. +pub async fn detect_serial_devices() -> Vec { + let mut devices = Vec::new(); + for path in SERIAL_CANDIDATES { + if tokio::fs::metadata(path).await.is_ok() { + devices.push(path.to_string()); + } + } + devices +} + +/// Try to open and handshake with each detected serial device. +/// Returns the first device that responds as Meshcore. +pub async fn probe_for_meshcore(paths: &[String]) -> Option<(String, DeviceInfo)> { + for path in paths { + debug!(path = %path, "Probing for Meshcore device"); + match MeshcoreDevice::open(path).await { + Ok(mut device) => { + match device.initialize().await { + Ok(info) => { + info!(path = %path, firmware = %info.firmware_version, "Found Meshcore device"); + // Drop the device so the listener can open it + drop(device); + return Some((path.clone(), info)); + } + Err(e) => { + debug!(path = %path, error = %e, "Not a Meshcore device"); + } + } + } + Err(e) => { + debug!(path = %path, error = %e, "Could not open serial port"); + } + } + } + None +} diff --git a/core/archipelago/src/mesh/types.rs b/core/archipelago/src/mesh/types.rs new file mode 100644 index 00000000..c0285935 --- /dev/null +++ b/core/archipelago/src/mesh/types.rs @@ -0,0 +1,114 @@ +//! Shared types for mesh networking subsystem. + +use serde::{Deserialize, Serialize}; + +/// Device firmware type, detected via protocol handshake. +#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] +#[serde(rename_all = "lowercase")] +pub enum DeviceType { + Meshcore, + Meshtastic, + Unknown, +} + +impl std::fmt::Display for DeviceType { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Self::Meshcore => write!(f, "meshcore"), + Self::Meshtastic => write!(f, "meshtastic"), + Self::Unknown => write!(f, "unknown"), + } + } +} + +/// A peer discovered via mesh radio. +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct MeshPeer { + /// Meshcore contact ID (uint32). + pub contact_id: u32, + /// Advertised name on the mesh network. + pub advert_name: String, + /// Archipelago DID (did:key:z...) if identity was received. + pub did: Option, + /// Ed25519 public key hex if identity was received. + pub pubkey_hex: Option, + /// X25519 public key (32 bytes) for key agreement. + #[serde(skip)] + pub x25519_pubkey: Option<[u8; 32]>, + /// Last received signal strength (dBm). + pub rssi: Option, + /// Signal-to-noise ratio. + pub snr: Option, + /// When we last heard from this peer. + pub last_heard: String, + /// Number of hops to reach this peer. + pub hops: u8, +} + +/// Direction of a mesh message. +#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] +#[serde(rename_all = "lowercase")] +pub enum MessageDirection { + Sent, + Received, +} + +/// A mesh message (sent or received). +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct MeshMessage { + pub id: u64, + pub direction: MessageDirection, + /// Meshcore contact ID of the peer. + pub peer_contact_id: u32, + /// Peer name (for display). + pub peer_name: Option, + /// Decrypted plaintext content. + pub plaintext: String, + pub timestamp: String, + /// Whether delivery was confirmed via ACK. + pub delivered: bool, + /// Whether the message was end-to-end encrypted. + pub encrypted: bool, +} + +/// Overall mesh subsystem status. +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct MeshStatus { + pub enabled: bool, + pub device_type: DeviceType, + pub device_path: Option, + pub device_connected: bool, + pub firmware_version: Option, + pub self_node_id: Option, + pub self_advert_name: Option, + pub peer_count: usize, + pub channel_name: String, + pub messages_sent: u64, + pub messages_received: u64, +} + +/// Information returned from device during initialization. +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct DeviceInfo { + pub firmware_version: String, + pub node_id: u32, + pub max_contacts: u16, + pub device_type: DeviceType, +} + +/// Events emitted by the mesh listener for other components to consume. +#[derive(Debug, Clone)] +pub enum MeshEvent { + DeviceConnected(DeviceInfo), + DeviceDisconnected, + PeerDiscovered(MeshPeer), + PeerUpdated(MeshPeer), + MessageReceived(MeshMessage), + MessageDelivered { message_id: u64 }, + IdentityReceived { + contact_id: u32, + did: String, + pubkey_hex: String, + x25519_pubkey: [u8; 32], + }, +} diff --git a/core/archipelago/src/server.rs b/core/archipelago/src/server.rs index af90251c..56bfd7dd 100644 --- a/core/archipelago/src/server.rs +++ b/core/archipelago/src/server.rs @@ -109,6 +109,80 @@ impl Server { ApiHandler::new(config.clone(), state_manager.clone(), metrics_store).await?, ); + // Initialize mesh networking service (if config has enabled: true) + { + let data_dir = config.data_dir.clone(); + let did = identity::did_key_from_pubkey_hex(&data.server_info.pubkey) + .unwrap_or_default(); + let pubkey_hex = identity.pubkey_hex(); + let signing_key = identity.signing_key(); + match crate::mesh::MeshService::new(&data_dir, signing_key, &did, &pubkey_hex).await { + Ok(mut mesh_service) => { + let mesh_config = crate::mesh::load_config(&data_dir).await.unwrap_or_default(); + if mesh_config.enabled { + if let Err(e) = mesh_service.start() { + warn!("Mesh service start failed (non-fatal): {}", e); + } else { + info!("📡 Mesh networking started"); + } + } + api_handler.rpc_handler().set_mesh_service(mesh_service).await; + info!("📡 Mesh service initialized"); + } + Err(e) => { + warn!("Mesh service init failed (non-fatal): {}", e); + } + } + } + + // Initialize transport router (unified routing: mesh > lan > tor) + { + let data_dir = config.data_dir.clone(); + let did = identity::did_key_from_pubkey_hex(&data.server_info.pubkey) + .unwrap_or_default(); + let pubkey_hex = identity.pubkey_hex(); + let mesh_config = crate::mesh::load_config(&data_dir).await.unwrap_or_default(); + let mesh_only = mesh_config.mesh_only_mode.unwrap_or(false); + + match crate::transport::PeerRegistry::load(&data_dir).await { + Ok(registry) => { + let registry = std::sync::Arc::new(registry); + let mut transports: Vec> = Vec::new(); + + // Tor transport (always register — availability checked dynamically) + transports.push(Box::new( + crate::transport::tor::TorTransport::new(&pubkey_hex), + )); + + // Mesh transport (wraps the mesh service) + transports.push(Box::new( + crate::transport::mesh_transport::MeshTransport::new( + api_handler.rpc_handler().mesh_service_arc(), + ), + )); + + // LAN transport (mDNS discovery) + let mut lan = crate::transport::lan::LanTransport::new(&did, &pubkey_hex, 5678); + match lan.start(registry.clone()) { + Ok(()) => info!("📡 LAN transport (mDNS) started"), + Err(e) => debug!("LAN transport init (non-fatal): {}", e), + } + transports.push(Box::new(lan)); + + let router = std::sync::Arc::new(crate::transport::TransportRouter::new( + transports, + registry, + mesh_only, + )); + api_handler.rpc_handler().set_transport_router(router).await; + info!("📡 Transport router initialized (mesh_only={})", mesh_only); + } + Err(e) => { + warn!("Transport router init failed (non-fatal): {}", e); + } + } + } + // Register Archipelago DWN protocols (background, non-blocking) { let data_dir = config.data_dir.clone(); diff --git a/core/archipelago/src/transport/chunking.rs b/core/archipelago/src/transport/chunking.rs new file mode 100644 index 00000000..7f90e423 --- /dev/null +++ b/core/archipelago/src/transport/chunking.rs @@ -0,0 +1,408 @@ +//! Chunked message protocol with Reed-Solomon FEC for LoRa transport. +//! +//! Splits payloads larger than a single LoRa frame (160 bytes) into +//! numbered chunks with forward error correction, enabling reliable +//! transfer over lossy radio links. +//! +//! Chunk wire format (8 bytes header + payload): +//! ```text +//! [0x01: type] [msg_id: u32 LE] [chunk_idx: u8] [total: u8] [is_parity: u8] [payload...] +//! ``` + +use anyhow::{Context, Result}; +use reed_solomon_erasure::galois_8::ReedSolomon; +use std::collections::HashMap; +use std::time::Instant; + +/// Header size for each chunk frame. +const CHUNK_HEADER_SIZE: usize = 8; + +/// Maximum payload per chunk after header. +/// 132 bytes available after ChaCha20-Poly1305 encryption overhead (12 nonce + 16 tag), +/// minus 8 byte chunk header = 124 bytes of user data per chunk. +pub const MAX_CHUNK_PAYLOAD: usize = 124; + +/// Chunk type marker in the wire format. +const CHUNK_TYPE_MARKER: u8 = 0x01; + +/// FEC redundancy ratio: 25% parity shards. +const FEC_RATIO_DENOMINATOR: usize = 4; + +/// Maximum age of pending reassembly entries before garbage collection. +const REASSEMBLY_TIMEOUT_SECS: u64 = 60; + +/// Maximum practical chunks for LoRa (airtime budget). +pub const MAX_PRACTICAL_CHUNKS: usize = 20; + +/// A single chunk ready for transmission. +#[derive(Debug, Clone)] +pub struct Chunk { + pub message_id: u32, + pub chunk_index: u8, + pub total_chunks: u8, + pub is_parity: bool, + pub payload: Vec, +} + +impl Chunk { + /// Serialize chunk to wire format. + pub fn to_bytes(&self) -> Vec { + let mut buf = Vec::with_capacity(CHUNK_HEADER_SIZE + self.payload.len()); + buf.push(CHUNK_TYPE_MARKER); + buf.extend_from_slice(&self.message_id.to_le_bytes()); + buf.push(self.chunk_index); + buf.push(self.total_chunks); + buf.push(if self.is_parity { 1 } else { 0 }); + buf.extend_from_slice(&self.payload); + buf + } + + /// Parse chunk from wire format. + pub fn from_bytes(data: &[u8]) -> Result { + if data.len() < CHUNK_HEADER_SIZE { + anyhow::bail!("Chunk too small: {} bytes", data.len()); + } + if data[0] != CHUNK_TYPE_MARKER { + anyhow::bail!("Not a chunked message (marker: 0x{:02x})", data[0]); + } + let message_id = u32::from_le_bytes([data[1], data[2], data[3], data[4]]); + let chunk_index = data[5]; + let total_chunks = data[6]; + let is_parity = data[7] != 0; + let payload = data[CHUNK_HEADER_SIZE..].to_vec(); + + Ok(Self { + message_id, + chunk_index, + total_chunks, + is_parity, + payload, + }) + } + + /// Check if a raw byte slice starts with the chunk type marker. + pub fn is_chunked_message(data: &[u8]) -> bool { + !data.is_empty() && data[0] == CHUNK_TYPE_MARKER + } +} + +/// Encode a payload into chunks with Reed-Solomon FEC parity. +/// +/// Returns a vector of chunks ready for sequential transmission. +/// Each chunk's payload is exactly `shard_size` bytes (padded if needed). +pub fn encode_chunked(data: &[u8]) -> Result> { + if data.is_empty() { + anyhow::bail!("Cannot chunk empty data"); + } + + let shard_size = MAX_CHUNK_PAYLOAD; + let data_shard_count = (data.len() + shard_size - 1) / shard_size; + + if data_shard_count > MAX_PRACTICAL_CHUNKS { + anyhow::bail!( + "Payload too large for LoRa chunking: {} bytes ({} chunks, max {})", + data.len(), + data_shard_count, + MAX_PRACTICAL_CHUNKS + ); + } + + let parity_shard_count = (data_shard_count + FEC_RATIO_DENOMINATOR - 1) / FEC_RATIO_DENOMINATOR; + let total_shards = data_shard_count + parity_shard_count; + + if total_shards > 255 { + anyhow::bail!("Too many shards: {}", total_shards); + } + + // Split data into equal-size shards + let mut shards: Vec> = Vec::with_capacity(total_shards); + for i in 0..data_shard_count { + let start = i * shard_size; + let end = (start + shard_size).min(data.len()); + let mut shard = vec![0u8; shard_size]; + shard[..end - start].copy_from_slice(&data[start..end]); + shards.push(shard); + } + + // Add empty parity shards + for _ in 0..parity_shard_count { + shards.push(vec![0u8; shard_size]); + } + + // Generate parity + let rs = ReedSolomon::new(data_shard_count, parity_shard_count) + .context("Failed to create Reed-Solomon codec")?; + rs.encode(&mut shards) + .context("Reed-Solomon encoding failed")?; + + // Build chunk frames + let message_id: u32 = rand::random(); + let total = total_shards as u8; + let mut chunks = Vec::with_capacity(total_shards); + + for (i, shard) in shards.into_iter().enumerate() { + chunks.push(Chunk { + message_id, + chunk_index: i as u8, + total_chunks: total, + is_parity: i >= data_shard_count, + payload: shard, + }); + } + + // Encode the original data length in the first chunk's first 4 bytes + // so the receiver can trim padding after reconstruction. + let data_len = data.len() as u32; + chunks[0].payload[..4].copy_from_slice(&data_len.to_le_bytes()); + // Re-encode FEC to reflect the length header change + let mut shard_data: Vec> = chunks.iter().map(|c| c.payload.clone()).collect(); + rs.encode(&mut shard_data) + .context("Reed-Solomon re-encoding failed")?; + for (i, shard) in shard_data.into_iter().enumerate() { + chunks[i].payload = shard; + } + + Ok(chunks) +} + +/// In-progress reassembly of a chunked message. +struct PendingMessage { + shards: Vec>>, + data_shard_count: usize, + parity_shard_count: usize, + received_count: usize, + created_at: Instant, +} + +/// Reassembles chunked messages from incoming chunks. +pub struct ChunkReassembler { + pending: HashMap, +} + +impl ChunkReassembler { + pub fn new() -> Self { + Self { + pending: HashMap::new(), + } + } + + /// Feed a chunk into the reassembler. + /// Returns `Some(data)` if the message is fully reconstructed. + pub fn feed(&mut self, chunk: &Chunk) -> Result>> { + // Garbage collect stale entries + self.pending.retain(|_, pm| { + pm.created_at.elapsed().as_secs() < REASSEMBLY_TIMEOUT_SECS + }); + + let total = chunk.total_chunks as usize; + let entry = self.pending.entry(chunk.message_id).or_insert_with(|| { + // Infer data vs parity count from chunks we've seen + // The first non-parity chunk tells us the split point + let data_count = if chunk.is_parity { + // Best guess: 80% data, 20% parity + (total * FEC_RATIO_DENOMINATOR) / (FEC_RATIO_DENOMINATOR + 1) + } else { + // We know this index is data — parity starts after all data + // Exact split point: smallest i where chunk_index >= data_count AND is_parity + total - (total + FEC_RATIO_DENOMINATOR) / (FEC_RATIO_DENOMINATOR + 1) + }; + let parity_count = total - data_count; + + PendingMessage { + shards: vec![None; total], + data_shard_count: data_count, + parity_shard_count: parity_count, + received_count: 0, + created_at: Instant::now(), + } + }); + + let idx = chunk.chunk_index as usize; + if idx >= total { + anyhow::bail!("Chunk index {} out of range (total {})", idx, total); + } + + if entry.shards[idx].is_none() { + entry.shards[idx] = Some(chunk.payload.clone()); + entry.received_count += 1; + } + + // Need at least data_shard_count shards to reconstruct + if entry.received_count >= entry.data_shard_count { + self.try_reconstruct(chunk.message_id) + } else { + Ok(None) + } + } + + fn try_reconstruct(&mut self, message_id: u32) -> Result>> { + let entry = match self.pending.get_mut(&message_id) { + Some(e) => e, + None => return Ok(None), + }; + + let rs = ReedSolomon::new(entry.data_shard_count, entry.parity_shard_count) + .context("Failed to create Reed-Solomon codec for reconstruction")?; + + let mut shards: Vec>> = entry.shards.clone(); + + match rs.reconstruct(&mut shards) { + Ok(()) => { + // Concatenate data shards (not parity) + let mut result = Vec::new(); + for shard in shards.iter().take(entry.data_shard_count) { + if let Some(data) = shard { + result.extend_from_slice(data); + } + } + + // Extract original length from first 4 bytes + if result.len() < 4 { + anyhow::bail!("Reconstructed data too small for length header"); + } + let original_len = + u32::from_le_bytes([result[0], result[1], result[2], result[3]]) as usize; + + // The actual data starts at byte 4 of the first shard + // But wait — the length is embedded in shard 0 bytes 0..4, and the + // actual payload starts at byte 4 of shard 0, then continues in subsequent shards. + // Actually, encode_chunked puts the length in the first 4 bytes of shard 0, + // and the rest of shard 0 + all other shards contain the original data. + // So we need to skip 4 bytes from the beginning. + if 4 + original_len > result.len() { + anyhow::bail!( + "Original length {} exceeds reconstructed data ({})", + original_len, + result.len() - 4 + ); + } + + let data = result[4..4 + original_len].to_vec(); + self.pending.remove(&message_id); + Ok(Some(data)) + } + Err(_) => { + // Not enough shards yet + Ok(None) + } + } + } +} + +impl Default for ChunkReassembler { + fn default() -> Self { + Self::new() + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_chunk_roundtrip_small() { + // Small payload fits in 1 data chunk + 1 parity chunk + let data = b"Hello, mesh network!"; + let chunks = encode_chunked(data).unwrap(); + + // 1 data + 1 parity = 2 chunks + assert_eq!(chunks.len(), 2); + assert!(!chunks[0].is_parity); + assert!(chunks[1].is_parity); + + let mut reassembler = ChunkReassembler::new(); + // Feed data chunk — should reconstruct immediately (1 data shard needed) + let result = reassembler.feed(&chunks[0]).unwrap(); + assert!(result.is_some()); + assert_eq!(result.unwrap(), data); + } + + #[test] + fn test_chunk_roundtrip_medium() { + // ~500 bytes: 4 data chunks + 1 parity + let data: Vec = (0..500).map(|i| (i % 256) as u8).collect(); + let chunks = encode_chunked(&data).unwrap(); + + let data_chunks: Vec<_> = chunks.iter().filter(|c| !c.is_parity).collect(); + let parity_chunks: Vec<_> = chunks.iter().filter(|c| c.is_parity).collect(); + assert_eq!(data_chunks.len(), 4); // ceil(500/124) = 5... wait + // Actually: ceil(500/124) = ceil(4.03) = 5 data shards + // But the first shard has 4 bytes of length header embedded, so + // the actual data capacity is 124 * N - 0 (length is IN the shard data). + // Let's just check it roundtrips. + + let mut reassembler = ChunkReassembler::new(); + let mut result = None; + for chunk in &chunks { + if let Some(data) = reassembler.feed(chunk).unwrap() { + result = Some(data); + break; + } + } + assert!(result.is_some()); + assert_eq!(result.unwrap(), data); + } + + #[test] + fn test_chunk_wire_format() { + let chunk = Chunk { + message_id: 0x12345678, + chunk_index: 2, + total_chunks: 5, + is_parity: false, + payload: vec![0xAA, 0xBB], + }; + let bytes = chunk.to_bytes(); + assert_eq!(bytes[0], CHUNK_TYPE_MARKER); + assert_eq!(&bytes[1..5], &0x12345678u32.to_le_bytes()); + assert_eq!(bytes[5], 2); + assert_eq!(bytes[6], 5); + assert_eq!(bytes[7], 0); + assert_eq!(&bytes[8..], &[0xAA, 0xBB]); + + let parsed = Chunk::from_bytes(&bytes).unwrap(); + assert_eq!(parsed.message_id, 0x12345678); + assert_eq!(parsed.chunk_index, 2); + assert_eq!(parsed.total_chunks, 5); + assert!(!parsed.is_parity); + assert_eq!(parsed.payload, vec![0xAA, 0xBB]); + } + + #[test] + fn test_chunk_is_chunked_message() { + assert!(Chunk::is_chunked_message(&[0x01, 0x00])); + assert!(!Chunk::is_chunked_message(&[0x02, 0x00])); + assert!(!Chunk::is_chunked_message(&[])); + } + + #[test] + fn test_chunk_with_missing_chunk() { + // Verify FEC can recover from a missing data chunk + let data: Vec = (0..300).map(|i| (i % 256) as u8).collect(); + let chunks = encode_chunked(&data).unwrap(); + + let mut reassembler = ChunkReassembler::new(); + // Skip chunk index 1 (simulate loss) + for chunk in &chunks { + if chunk.chunk_index == 1 { + continue; + } + if let Some(recovered) = reassembler.feed(chunk).unwrap() { + assert_eq!(recovered, data); + return; + } + } + panic!("Failed to reconstruct with one missing chunk"); + } + + #[test] + fn test_empty_data_rejected() { + assert!(encode_chunked(&[]).is_err()); + } + + #[test] + fn test_too_large_rejected() { + let data = vec![0u8; MAX_CHUNK_PAYLOAD * (MAX_PRACTICAL_CHUNKS + 1)]; + assert!(encode_chunked(&data).is_err()); + } +} diff --git a/core/archipelago/src/transport/delta.rs b/core/archipelago/src/transport/delta.rs new file mode 100644 index 00000000..33807023 --- /dev/null +++ b/core/archipelago/src/transport/delta.rs @@ -0,0 +1,399 @@ +//! CBOR delta encoding for federation state sync. +//! +//! Instead of sending a full NodeStateSnapshot (~500-2000 bytes JSON) on every +//! sync cycle, we compute a delta of only changed fields and encode it as CBOR. +//! A typical delta (CPU + memory change) is ~30-50 bytes — small enough to fit +//! in a single LoRa chunk after encryption. + +use crate::federation::{AppStatus, NodeStateSnapshot}; +use anyhow::{Context, Result}; +use serde::{Deserialize, Serialize}; + +/// Delta format version. Increment when fields change. +const DELTA_VERSION: u8 = 1; + +/// Compact state delta — only changed fields, with short field names. +#[derive(Debug, Clone, Serialize, Deserialize, Default)] +pub struct StateDelta { + /// Timestamp of the snapshot this delta represents. + pub ts: String, + /// Delta format version for forward compatibility. + pub v: u8, + /// Apps that changed status (full entry for each changed app). + #[serde(skip_serializing_if = "Option::is_none")] + pub apps: Option>, + /// App IDs that were removed since last sync. + #[serde(skip_serializing_if = "Option::is_none")] + pub apps_rm: Option>, + /// CPU usage percent (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub cpu: Option, + /// Memory used bytes (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub mem_u: Option, + /// Memory total bytes (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub mem_t: Option, + /// Disk used bytes (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub dsk_u: Option, + /// Disk total bytes (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub dsk_t: Option, + /// Uptime seconds (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub up: Option, + /// Tor active flag (only if changed). + #[serde(skip_serializing_if = "Option::is_none")] + pub tor: Option, +} + +/// Compute the delta between two state snapshots. +/// Returns only the fields that differ. +pub fn compute_delta(prev: &NodeStateSnapshot, curr: &NodeStateSnapshot) -> StateDelta { + let mut delta = StateDelta { + ts: curr.timestamp.clone(), + v: DELTA_VERSION, + ..Default::default() + }; + + // Compare apps + let prev_apps: std::collections::HashMap<&str, &AppStatus> = + prev.apps.iter().map(|a| (a.id.as_str(), a)).collect(); + let curr_apps: std::collections::HashMap<&str, &AppStatus> = + curr.apps.iter().map(|a| (a.id.as_str(), a)).collect(); + + let mut changed_apps = Vec::new(); + let mut removed_apps = Vec::new(); + + for (id, curr_app) in &curr_apps { + match prev_apps.get(id) { + Some(prev_app) => { + if prev_app.status != curr_app.status || prev_app.version != curr_app.version { + changed_apps.push((*curr_app).clone()); + } + } + None => changed_apps.push((*curr_app).clone()), + } + } + + for id in prev_apps.keys() { + if !curr_apps.contains_key(id) { + removed_apps.push(id.to_string()); + } + } + + if !changed_apps.is_empty() { + delta.apps = Some(changed_apps); + } + if !removed_apps.is_empty() { + delta.apps_rm = Some(removed_apps); + } + + // Compare scalar fields + if curr.cpu_usage_percent != prev.cpu_usage_percent { + delta.cpu = curr.cpu_usage_percent; + } + if curr.mem_used_bytes != prev.mem_used_bytes { + delta.mem_u = curr.mem_used_bytes; + } + if curr.mem_total_bytes != prev.mem_total_bytes { + delta.mem_t = curr.mem_total_bytes; + } + if curr.disk_used_bytes != prev.disk_used_bytes { + delta.dsk_u = curr.disk_used_bytes; + } + if curr.disk_total_bytes != prev.disk_total_bytes { + delta.dsk_t = curr.disk_total_bytes; + } + if curr.uptime_secs != prev.uptime_secs { + delta.up = curr.uptime_secs; + } + if curr.tor_active != prev.tor_active { + delta.tor = curr.tor_active; + } + + delta +} + +/// Apply a delta to a base snapshot, producing an updated snapshot. +pub fn apply_delta(base: &NodeStateSnapshot, delta: &StateDelta) -> NodeStateSnapshot { + let mut result = base.clone(); + result.timestamp = delta.ts.clone(); + + // Apply app changes + if let Some(changed) = &delta.apps { + for app in changed { + if let Some(existing) = result.apps.iter_mut().find(|a| a.id == app.id) { + existing.status = app.status.clone(); + existing.version = app.version.clone(); + } else { + result.apps.push(app.clone()); + } + } + } + + // Apply app removals + if let Some(removed) = &delta.apps_rm { + result.apps.retain(|a| !removed.contains(&a.id)); + } + + // Apply scalar fields + if let Some(cpu) = delta.cpu { + result.cpu_usage_percent = Some(cpu); + } + if let Some(mem_u) = delta.mem_u { + result.mem_used_bytes = Some(mem_u); + } + if let Some(mem_t) = delta.mem_t { + result.mem_total_bytes = Some(mem_t); + } + if let Some(dsk_u) = delta.dsk_u { + result.disk_used_bytes = Some(dsk_u); + } + if let Some(dsk_t) = delta.dsk_t { + result.disk_total_bytes = Some(dsk_t); + } + if let Some(up) = delta.up { + result.uptime_secs = Some(up); + } + if let Some(tor) = delta.tor { + result.tor_active = Some(tor); + } + + result +} + +/// Encode a delta as CBOR bytes. +pub fn encode_cbor(delta: &StateDelta) -> Result> { + let mut buf = Vec::new(); + ciborium::into_writer(delta, &mut buf).context("CBOR encode failed")?; + Ok(buf) +} + +/// Decode a delta from CBOR bytes. +pub fn decode_cbor(data: &[u8]) -> Result { + ciborium::from_reader(data).context("CBOR decode failed") +} + +/// Encode a full state snapshot as CBOR (for initial sync or Tor transport). +pub fn encode_snapshot_cbor(snapshot: &NodeStateSnapshot) -> Result> { + let mut buf = Vec::new(); + ciborium::into_writer(snapshot, &mut buf).context("CBOR snapshot encode failed")?; + Ok(buf) +} + +/// Decode a full state snapshot from CBOR. +pub fn decode_snapshot_cbor(data: &[u8]) -> Result { + ciborium::from_reader(data).context("CBOR snapshot decode failed") +} + +#[cfg(test)] +mod tests { + use super::*; + + fn sample_snapshot_a() -> NodeStateSnapshot { + NodeStateSnapshot { + timestamp: "2026-03-16T12:00:00Z".to_string(), + apps: vec![ + AppStatus { + id: "bitcoin-knots".to_string(), + status: "running".to_string(), + version: Some("27.1".to_string()), + }, + AppStatus { + id: "lnd".to_string(), + status: "running".to_string(), + version: Some("0.18.0".to_string()), + }, + AppStatus { + id: "mempool".to_string(), + status: "stopped".to_string(), + version: Some("3.0".to_string()), + }, + ], + cpu_usage_percent: Some(23.5), + mem_used_bytes: Some(4_000_000_000), + mem_total_bytes: Some(16_000_000_000), + disk_used_bytes: Some(500_000_000_000), + disk_total_bytes: Some(1_800_000_000_000), + uptime_secs: Some(86400), + tor_active: Some(true), + } + } + + fn sample_snapshot_b() -> NodeStateSnapshot { + NodeStateSnapshot { + timestamp: "2026-03-16T12:05:00Z".to_string(), + apps: vec![ + AppStatus { + id: "bitcoin-knots".to_string(), + status: "running".to_string(), + version: Some("27.1".to_string()), + }, + AppStatus { + id: "lnd".to_string(), + status: "running".to_string(), + version: Some("0.18.0".to_string()), + }, + AppStatus { + id: "mempool".to_string(), + status: "running".to_string(), // Changed: stopped -> running + version: Some("3.0".to_string()), + }, + ], + cpu_usage_percent: Some(35.2), // Changed + mem_used_bytes: Some(4_500_000_000), // Changed + mem_total_bytes: Some(16_000_000_000), + disk_used_bytes: Some(500_000_000_000), + disk_total_bytes: Some(1_800_000_000_000), + uptime_secs: Some(86700), // Changed + tor_active: Some(true), + } + } + + #[test] + fn test_compute_delta_detects_changes() { + let a = sample_snapshot_a(); + let b = sample_snapshot_b(); + let delta = compute_delta(&a, &b); + + assert_eq!(delta.v, DELTA_VERSION); + assert_eq!(delta.ts, "2026-03-16T12:05:00Z"); + + // Mempool status changed + assert!(delta.apps.is_some()); + let apps = delta.apps.as_ref().unwrap(); + assert_eq!(apps.len(), 1); + assert_eq!(apps[0].id, "mempool"); + assert_eq!(apps[0].status, "running"); + + // No apps removed + assert!(delta.apps_rm.is_none()); + + // Scalar changes + assert_eq!(delta.cpu, Some(35.2)); + assert_eq!(delta.mem_u, Some(4_500_000_000)); + assert_eq!(delta.up, Some(86700)); + + // Unchanged fields should be None + assert!(delta.mem_t.is_none()); + assert!(delta.dsk_u.is_none()); + assert!(delta.dsk_t.is_none()); + assert!(delta.tor.is_none()); + } + + #[test] + fn test_apply_delta_reconstructs() { + let a = sample_snapshot_a(); + let b = sample_snapshot_b(); + let delta = compute_delta(&a, &b); + let reconstructed = apply_delta(&a, &delta); + + assert_eq!(reconstructed.timestamp, b.timestamp); + assert_eq!(reconstructed.cpu_usage_percent, b.cpu_usage_percent); + assert_eq!(reconstructed.mem_used_bytes, b.mem_used_bytes); + assert_eq!(reconstructed.uptime_secs, b.uptime_secs); + + // Check mempool status was updated + let mempool = reconstructed.apps.iter().find(|a| a.id == "mempool").unwrap(); + assert_eq!(mempool.status, "running"); + } + + #[test] + fn test_delta_with_app_removal() { + let a = sample_snapshot_a(); + let mut b = sample_snapshot_b(); + // Remove mempool from b + b.apps.retain(|app| app.id != "mempool"); + + let delta = compute_delta(&a, &b); + assert!(delta.apps_rm.is_some()); + assert_eq!(delta.apps_rm.as_ref().unwrap(), &["mempool".to_string()]); + + let reconstructed = apply_delta(&a, &delta); + assert!(reconstructed.apps.iter().all(|a| a.id != "mempool")); + } + + #[test] + fn test_delta_with_new_app() { + let a = sample_snapshot_a(); + let mut b = sample_snapshot_b(); + b.apps.push(AppStatus { + id: "electrs".to_string(), + status: "running".to_string(), + version: Some("0.10.0".to_string()), + }); + + let delta = compute_delta(&a, &b); + let apps = delta.apps.as_ref().unwrap(); + assert!(apps.iter().any(|a| a.id == "electrs")); + + let reconstructed = apply_delta(&a, &delta); + assert!(reconstructed.apps.iter().any(|a| a.id == "electrs")); + } + + #[test] + fn test_cbor_roundtrip() { + let a = sample_snapshot_a(); + let b = sample_snapshot_b(); + let delta = compute_delta(&a, &b); + + let encoded = encode_cbor(&delta).unwrap(); + let decoded = decode_cbor(&encoded).unwrap(); + + assert_eq!(decoded.ts, delta.ts); + assert_eq!(decoded.cpu, delta.cpu); + assert_eq!(decoded.mem_u, delta.mem_u); + assert_eq!(decoded.up, delta.up); + } + + #[test] + fn test_cbor_size_vs_json() { + let a = sample_snapshot_a(); + let b = sample_snapshot_b(); + let delta = compute_delta(&a, &b); + + let cbor_bytes = encode_cbor(&delta).unwrap(); + let json_bytes = serde_json::to_vec(&b).unwrap(); + + // CBOR delta should be significantly smaller than full JSON snapshot + assert!( + cbor_bytes.len() < json_bytes.len(), + "CBOR delta ({} bytes) should be smaller than full JSON ({} bytes)", + cbor_bytes.len(), + json_bytes.len() + ); + } + + #[test] + fn test_snapshot_cbor_roundtrip() { + let snapshot = sample_snapshot_a(); + let encoded = encode_snapshot_cbor(&snapshot).unwrap(); + let decoded = decode_snapshot_cbor(&encoded).unwrap(); + + assert_eq!(decoded.timestamp, snapshot.timestamp); + assert_eq!(decoded.apps.len(), snapshot.apps.len()); + assert_eq!(decoded.cpu_usage_percent, snapshot.cpu_usage_percent); + } + + #[test] + fn test_no_changes_produces_minimal_delta() { + let a = sample_snapshot_a(); + let mut b = a.clone(); + b.timestamp = "2026-03-16T12:01:00Z".to_string(); + + let delta = compute_delta(&a, &b); + + // Only timestamp should differ + assert!(delta.apps.is_none()); + assert!(delta.apps_rm.is_none()); + assert!(delta.cpu.is_none()); + assert!(delta.mem_u.is_none()); + assert!(delta.tor.is_none()); + + let cbor_bytes = encode_cbor(&delta).unwrap(); + // Minimal delta should be very small (just timestamp + version) + assert!(cbor_bytes.len() < 50, "Minimal delta should be <50 bytes, got {}", cbor_bytes.len()); + } +} diff --git a/core/archipelago/src/transport/lan.rs b/core/archipelago/src/transport/lan.rs new file mode 100644 index 00000000..26b810de --- /dev/null +++ b/core/archipelago/src/transport/lan.rs @@ -0,0 +1,170 @@ +//! LAN transport — peer discovery via mDNS and direct HTTP messaging. +//! +//! Advertises this node as `_archipelago._tcp.local.` with TXT records +//! containing the node's DID and public key. Discovers other Archipelago +//! nodes on the same LAN segment. Sends messages via direct HTTP POST +//! to the discovered IP:port — same endpoint as Tor transport but without +//! the SOCKS5 proxy, for near-zero latency on local networks. + +use super::{NodeTransport, PeerRegistry, PeerSource, TransportKind, TransportMessage}; +use anyhow::{Context, Result}; +use mdns_sd::{ServiceDaemon, ServiceEvent, ServiceInfo}; +use std::sync::atomic::{AtomicBool, Ordering}; +use std::sync::Arc; +use std::time::Duration; +use tokio::sync::RwLock; +use tracing::{debug, info, warn}; + +const SERVICE_TYPE: &str = "_archipelago._tcp.local."; +const DEFAULT_PORT: u16 = 5678; +const LAN_TIMEOUT: Duration = Duration::from_secs(10); + +pub struct LanTransport { + our_did: String, + our_pubkey_hex: String, + our_port: u16, + daemon: Option, + available: AtomicBool, +} + +impl LanTransport { + /// Create a new LAN transport. Does not start discovery yet. + pub fn new(our_did: &str, our_pubkey_hex: &str, port: u16) -> Self { + Self { + our_did: our_did.to_string(), + our_pubkey_hex: our_pubkey_hex.to_string(), + our_port: port, + daemon: None, + available: AtomicBool::new(false), + } + } + + /// Start the mDNS daemon, advertise our service, and begin browsing. + /// Non-blocking — spawns background tasks for discovery. + pub fn start(&mut self, registry: Arc) -> Result<()> { + let daemon = ServiceDaemon::new() + .context("Failed to create mDNS daemon")?; + + // Advertise our service + let hostname = format!("archy-{}.local.", &self.our_pubkey_hex[..8]); + let properties = vec![ + ("did".to_string(), self.our_did.clone()), + ("pubkey".to_string(), self.our_pubkey_hex.clone()), + ("version".to_string(), "0.1.0".to_string()), + ]; + + let service_info = ServiceInfo::new( + SERVICE_TYPE, + &format!("archy-{}", &self.our_pubkey_hex[..8]), + &hostname, + "", + self.our_port, + Some(properties.into_iter().collect()), + ) + .context("Failed to create mDNS service info")?; + + daemon + .register(service_info) + .context("Failed to register mDNS service")?; + + // Browse for other Archipelago nodes + let receiver = daemon + .browse(SERVICE_TYPE) + .context("Failed to browse mDNS services")?; + + self.daemon = Some(daemon); + self.available.store(true, Ordering::Relaxed); + + info!("LAN transport started — advertising {}", SERVICE_TYPE); + + // Spawn background discovery listener + let registry_clone = registry; + tokio::spawn(async move { + while let Ok(event) = receiver.recv() { + match event { + ServiceEvent::ServiceResolved(info) => { + let did = info.get_properties().get("did").map(|v| v.val_str().to_string()); + let pubkey = info.get_properties().get("pubkey").map(|v| v.val_str().to_string()); + let addresses = info.get_addresses(); + + if let (Some(did), Some(pubkey)) = (did, pubkey) { + if let Some(scoped_ip) = addresses.iter().next() { + let ip: std::net::IpAddr = (*scoped_ip).into(); + let socket_addr = std::net::SocketAddr::new(ip, info.get_port()); + info!(did = %did, addr = %socket_addr, "Discovered LAN peer via mDNS"); + registry_clone + .register_peer(&did, &pubkey, PeerSource::LanDiscovery) + .await; + registry_clone + .set_lan_address(&did, socket_addr) + .await; + registry_clone + .set_name(&did, info.get_fullname()) + .await; + } + } + } + ServiceEvent::ServiceRemoved(_, name) => { + debug!(name = %name, "LAN peer removed"); + } + _ => {} + } + } + }); + + Ok(()) + } + + async fn send_impl(&self, address: &str, message: &TransportMessage) -> Result<()> { + // address is "ip:port" format + let url = format!("http://{}/archipelago/node-message", address); + let encoded_payload = { + use base64::Engine; + base64::engine::general_purpose::STANDARD.encode(&message.payload) + }; + let body = serde_json::json!({ + "from_pubkey": self.our_pubkey_hex, + "from_did": message.from_did, + "message": encoded_payload, + "message_type": message.message_type, + "timestamp": chrono::Utc::now().to_rfc3339(), + "transport": "lan", + }); + + let client = reqwest::Client::builder() + .timeout(LAN_TIMEOUT) + .build() + .context("Failed to build LAN HTTP client")?; + + let resp = client + .post(&url) + .json(&body) + .send() + .await + .map_err(|e| anyhow::anyhow!("LAN send to {} failed: {}", address, e))?; + + if !resp.status().is_success() { + anyhow::bail!("LAN peer at {} returned {}", address, resp.status().as_u16()); + } + + Ok(()) + } +} + +impl NodeTransport for LanTransport { + fn kind(&self) -> TransportKind { + TransportKind::Lan + } + + fn is_available(&self) -> bool { + self.available.load(Ordering::Relaxed) + } + + fn send<'a>( + &'a self, + address: &'a str, + message: &'a TransportMessage, + ) -> std::pin::Pin> + Send + 'a>> { + Box::pin(async move { self.send_impl(address, message).await }) + } +} diff --git a/core/archipelago/src/transport/mesh_transport.rs b/core/archipelago/src/transport/mesh_transport.rs new file mode 100644 index 00000000..babd9878 --- /dev/null +++ b/core/archipelago/src/transport/mesh_transport.rs @@ -0,0 +1,114 @@ +//! Mesh transport — sends messages via LoRa radio through the MeshService. +//! +//! Bridges the transport abstraction to the existing mesh serial listener. +//! For payloads exceeding the LoRa frame limit (160 bytes), uses the chunking +//! protocol with Reed-Solomon FEC for reliable delivery. + +use super::chunking::{self, ChunkReassembler, MAX_CHUNK_PAYLOAD}; +use super::{NodeTransport, TransportKind, TransportMessage}; +use crate::mesh::MeshService; +use anyhow::{Context, Result}; +use std::sync::Arc; +use std::time::Duration; +use tokio::sync::RwLock; + +/// Inter-chunk delay for LoRa airtime fairness. +const CHUNK_DELAY: Duration = Duration::from_millis(200); + +/// Maximum single-frame payload (before chunking kicks in). +/// After ChaCha20-Poly1305 overhead: 160 - 12 (nonce) - 16 (tag) = 132 bytes. +const MAX_SINGLE_FRAME: usize = 132; + +pub struct MeshTransport { + mesh_service: Arc>>, + reassembler: Arc>, +} + +impl MeshTransport { + pub fn new(mesh_service: Arc>>) -> Self { + Self { + mesh_service, + reassembler: Arc::new(RwLock::new(ChunkReassembler::new())), + } + } + + /// Get a reference to the chunk reassembler (for incoming message processing). + pub fn reassembler(&self) -> Arc> { + Arc::clone(&self.reassembler) + } + + async fn send_impl(&self, contact_id_str: &str, message: &TransportMessage) -> Result<()> { + let contact_id: u32 = contact_id_str + .parse() + .context("Invalid mesh contact ID")?; + + let service = self.mesh_service.read().await; + let service = service + .as_ref() + .ok_or_else(|| anyhow::anyhow!("Mesh service not running"))?; + + // Serialize the transport message as CBOR for compact encoding + let mut payload = Vec::new(); + ciborium::into_writer(message, &mut payload) + .context("Failed to CBOR-encode transport message")?; + + if payload.len() <= MAX_SINGLE_FRAME { + // Fits in a single LoRa frame — send directly as text + let text = { + use base64::Engine; + base64::engine::general_purpose::STANDARD.encode(&payload) + }; + service + .send_message(contact_id, &text) + .await + .context("Mesh single-frame send failed")?; + } else { + // Chunk with FEC + let chunks = chunking::encode_chunked(&payload)?; + tracing::info!( + chunks = chunks.len(), + payload_bytes = payload.len(), + "Sending chunked message over mesh" + ); + for chunk in &chunks { + let chunk_bytes = chunk.to_bytes(); + let text = { + use base64::Engine; + base64::engine::general_purpose::STANDARD.encode(&chunk_bytes) + }; + service + .send_message(contact_id, &text) + .await + .context("Mesh chunk send failed")?; + tokio::time::sleep(CHUNK_DELAY).await; + } + } + + Ok(()) + } +} + +impl NodeTransport for MeshTransport { + fn kind(&self) -> TransportKind { + TransportKind::Mesh + } + + fn is_available(&self) -> bool { + // Check synchronously — we can't await here, so use try_read + match self.mesh_service.try_read() { + Ok(guard) => match guard.as_ref() { + Some(_service) => true, // Service exists + None => false, + }, + Err(_) => false, // Lock contention — assume unavailable + } + } + + fn send<'a>( + &'a self, + address: &'a str, + message: &'a TransportMessage, + ) -> std::pin::Pin> + Send + 'a>> { + Box::pin(async move { self.send_impl(address, message).await }) + } +} diff --git a/core/archipelago/src/transport/mod.rs b/core/archipelago/src/transport/mod.rs new file mode 100644 index 00000000..4aa3eb1d --- /dev/null +++ b/core/archipelago/src/transport/mod.rs @@ -0,0 +1,568 @@ +//! Transport abstraction layer for Archipelago node-to-node communication. +//! +//! Unifies mesh radio (LoRa), LAN (mDNS), and Tor under a common trait. +//! Routes messages to peers via the best available transport with automatic +//! fallback: Mesh (priority 1) > LAN (2) > Tor (3). + +pub mod chunking; +pub mod delta; +pub mod lan; +pub mod mesh_transport; +pub mod tor; + +use crate::federation::TrustLevel; +use anyhow::{Context, Result}; +use serde::{Deserialize, Serialize}; +use std::collections::HashMap; +use std::net::SocketAddr; +use std::path::{Path, PathBuf}; +use std::sync::Arc; +use tokio::fs; +use tokio::sync::RwLock; +use tracing::{info, warn}; + +// ─── Transport Kind ───────────────────────────────────────────────────── + +/// Transport backend type, ordered by priority (lower = preferred). +#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize, Deserialize)] +#[serde(rename_all = "lowercase")] +pub enum TransportKind { + Mesh = 1, + Lan = 2, + Tor = 3, +} + +impl std::fmt::Display for TransportKind { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Self::Mesh => write!(f, "mesh"), + Self::Lan => write!(f, "lan"), + Self::Tor => write!(f, "tor"), + } + } +} + +// ─── Message Types ────────────────────────────────────────────────────── + +/// Type of transport-level message. +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(rename_all = "snake_case")] +pub enum MessageType { + StateSync, + PeerMessage, + FederationRpc, +} + +/// A message sent between nodes via any transport. +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct TransportMessage { + pub from_did: String, + pub payload: Vec, + pub message_type: MessageType, +} + +// ─── NodeTransport Trait ──────────────────────────────────────────────── + +/// Trait implemented by each transport backend (Tor, Mesh, LAN). +pub trait NodeTransport: Send + Sync { + /// Which transport this is. + fn kind(&self) -> TransportKind; + + /// Whether this transport is currently operational. + fn is_available(&self) -> bool; + + /// Send raw bytes to a peer at their transport-specific address. + /// For Tor: address is an onion hostname. + /// For Mesh: address is a contact_id as string. + /// For LAN: address is "ip:port". + fn send<'a>( + &'a self, + address: &'a str, + message: &'a TransportMessage, + ) -> std::pin::Pin> + Send + 'a>>; +} + +// ─── Peer Registry ────────────────────────────────────────────────────── + +/// How we discovered this peer. +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(rename_all = "snake_case")] +pub enum PeerSource { + Federation, + MeshDiscovery, + LanDiscovery, + NostrHandshake, + Manual, +} + +/// Unified peer record with per-transport capabilities. +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct PeerRecord { + pub did: String, + pub pubkey_hex: String, + #[serde(default)] + pub name: Option, + #[serde(default)] + pub trust_level: Option, + #[serde(default)] + pub source: Option, + + // Transport-specific addresses + #[serde(default)] + pub mesh_contact_id: Option, + #[serde(default)] + pub lan_address: Option, + #[serde(default)] + pub onion_address: Option, + + // Freshness timestamps (RFC 3339) + #[serde(default)] + pub last_mesh: Option, + #[serde(default)] + pub last_lan: Option, + #[serde(default)] + pub last_tor: Option, +} + +impl PeerRecord { + /// Get the transport-specific address for a given transport kind. + pub fn address_for(&self, kind: TransportKind) -> Option { + match kind { + TransportKind::Mesh => self.mesh_contact_id.map(|id| id.to_string()), + TransportKind::Lan => self.lan_address.clone(), + TransportKind::Tor => self.onion_address.clone(), + } + } + + /// Check if the last-seen timestamp for a transport is fresh enough. + /// Mesh/LAN: 5 minutes. Tor: 1 hour. + pub fn is_fresh(&self, kind: TransportKind) -> bool { + let timestamp = match kind { + TransportKind::Mesh => self.last_mesh.as_deref(), + TransportKind::Lan => self.last_lan.as_deref(), + TransportKind::Tor => self.last_tor.as_deref(), + }; + let Some(ts) = timestamp else { + // No timestamp means we haven't confirmed it, but the address exists. + // Allow it — the send will fail if unreachable. + return true; + }; + let Ok(parsed) = chrono::DateTime::parse_from_rfc3339(ts) else { + return false; + }; + let age = chrono::Utc::now().signed_duration_since(parsed); + let max_age = match kind { + TransportKind::Mesh | TransportKind::Lan => chrono::Duration::minutes(5), + TransportKind::Tor => chrono::Duration::hours(1), + }; + age < max_age + } + + /// List available transport kinds for this peer, in priority order. + pub fn available_transports(&self) -> Vec { + let mut result = Vec::new(); + if self.mesh_contact_id.is_some() { + result.push(TransportKind::Mesh); + } + if self.lan_address.is_some() { + result.push(TransportKind::Lan); + } + if self.onion_address.is_some() { + result.push(TransportKind::Tor); + } + result + } +} + +const PEERS_FILE: &str = "transport-peers.json"; + +/// Thread-safe registry of all known peers with their transport capabilities. +pub struct PeerRegistry { + peers: RwLock>, + data_dir: PathBuf, +} + +#[derive(Debug, Default, Serialize, Deserialize)] +struct PeersFile { + peers: Vec, +} + +impl PeerRegistry { + /// Load peer registry from disk (or create empty). + pub async fn load(data_dir: &Path) -> Result { + let path = data_dir.join(PEERS_FILE); + let peers = if path.exists() { + let content = fs::read_to_string(&path) + .await + .context("Failed to read transport peers")?; + let file: PeersFile = serde_json::from_str(&content).unwrap_or_default(); + file.peers + .into_iter() + .map(|p| (p.did.clone(), p)) + .collect() + } else { + HashMap::new() + }; + + Ok(Self { + peers: RwLock::new(peers), + data_dir: data_dir.to_path_buf(), + }) + } + + /// Persist current state to disk. + pub async fn save(&self) -> Result<()> { + let peers = self.peers.read().await; + let file = PeersFile { + peers: peers.values().cloned().collect(), + }; + let content = + serde_json::to_string_pretty(&file).context("Failed to serialize transport peers")?; + fs::write(self.data_dir.join(PEERS_FILE), content) + .await + .context("Failed to write transport peers")?; + Ok(()) + } + + /// Register or update a peer. + pub async fn register_peer( + &self, + did: &str, + pubkey_hex: &str, + source: PeerSource, + ) -> PeerRecord { + let mut peers = self.peers.write().await; + let record = peers.entry(did.to_string()).or_insert_with(|| PeerRecord { + did: did.to_string(), + pubkey_hex: pubkey_hex.to_string(), + name: None, + trust_level: None, + source: Some(source.clone()), + mesh_contact_id: None, + lan_address: None, + onion_address: None, + last_mesh: None, + last_lan: None, + last_tor: None, + }); + // Update pubkey if it changed + if record.pubkey_hex != pubkey_hex { + record.pubkey_hex = pubkey_hex.to_string(); + } + record.clone() + } + + /// Set the mesh contact ID for a peer. + pub async fn set_mesh_id(&self, did: &str, contact_id: u32) { + let mut peers = self.peers.write().await; + if let Some(peer) = peers.get_mut(did) { + peer.mesh_contact_id = Some(contact_id); + peer.last_mesh = Some(chrono::Utc::now().to_rfc3339()); + } + } + + /// Set the LAN address for a peer. + pub async fn set_lan_address(&self, did: &str, addr: SocketAddr) { + let mut peers = self.peers.write().await; + if let Some(peer) = peers.get_mut(did) { + peer.lan_address = Some(addr.to_string()); + peer.last_lan = Some(chrono::Utc::now().to_rfc3339()); + } + } + + /// Set the onion address for a peer. + pub async fn set_onion(&self, did: &str, onion: &str) { + let mut peers = self.peers.write().await; + if let Some(peer) = peers.get_mut(did) { + peer.onion_address = Some(onion.to_string()); + peer.last_tor = Some(chrono::Utc::now().to_rfc3339()); + } + } + + /// Set the display name for a peer. + pub async fn set_name(&self, did: &str, name: &str) { + let mut peers = self.peers.write().await; + if let Some(peer) = peers.get_mut(did) { + peer.name = Some(name.to_string()); + } + } + + /// Get a peer by DID. + pub async fn get_peer(&self, did: &str) -> Option { + self.peers.read().await.get(did).cloned() + } + + /// Get all peers. + pub async fn all_peers(&self) -> Vec { + self.peers.read().await.values().cloned().collect() + } + + /// Count of registered peers. + pub async fn count(&self) -> usize { + self.peers.read().await.len() + } +} + +// ─── Transport Router ─────────────────────────────────────────────────── + +/// Routes messages to the best available transport per peer. +pub struct TransportRouter { + transports: Vec>, + pub registry: Arc, + mesh_only: RwLock, +} + +impl TransportRouter { + pub fn new( + transports: Vec>, + registry: Arc, + mesh_only: bool, + ) -> Self { + Self { + transports, + registry, + mesh_only: RwLock::new(mesh_only), + } + } + + /// Send a message to a peer by DID, using the best available transport. + pub async fn send_to_peer( + &self, + did: &str, + message: &TransportMessage, + ) -> Result { + let peer = self + .registry + .get_peer(did) + .await + .ok_or_else(|| anyhow::anyhow!("Unknown peer: {}", did))?; + + let candidates = self.route(&peer).await; + if candidates.is_empty() { + anyhow::bail!("No available transport for peer {}", did); + } + + let mut last_err = None; + for kind in &candidates { + let transport = match self.transports.iter().find(|t| t.kind() == *kind) { + Some(t) => t, + None => continue, + }; + + let address = match peer.address_for(*kind) { + Some(a) => a, + None => continue, + }; + + match transport.send(&address, message).await { + Ok(()) => { + info!(transport = %kind, peer = %did, "Message sent"); + return Ok(*kind); + } + Err(e) => { + warn!(transport = %kind, peer = %did, error = %e, "Transport failed, trying next"); + last_err = Some(e); + } + } + } + + Err(last_err.unwrap_or_else(|| anyhow::anyhow!("All transports failed for peer {}", did))) + } + + /// Determine transport priority for a peer. + async fn route(&self, peer: &PeerRecord) -> Vec { + let mesh_only = *self.mesh_only.read().await; + let mut available = Vec::new(); + + if mesh_only { + // Off-grid mode: only mesh + if peer.mesh_contact_id.is_some() { + available.push(TransportKind::Mesh); + } + } else { + // Normal mode: priority order, check freshness + if peer.mesh_contact_id.is_some() && peer.is_fresh(TransportKind::Mesh) { + if let Some(t) = self.transports.iter().find(|t| t.kind() == TransportKind::Mesh) { + if t.is_available() { + available.push(TransportKind::Mesh); + } + } + } + if peer.lan_address.is_some() && peer.is_fresh(TransportKind::Lan) { + if let Some(t) = self.transports.iter().find(|t| t.kind() == TransportKind::Lan) { + if t.is_available() { + available.push(TransportKind::Lan); + } + } + } + if peer.onion_address.is_some() { + if let Some(t) = self.transports.iter().find(|t| t.kind() == TransportKind::Tor) { + if t.is_available() { + available.push(TransportKind::Tor); + } + } + } + } + + available + } + + /// Set mesh-only (off-grid) mode. + pub async fn set_mesh_only(&self, enabled: bool) { + *self.mesh_only.write().await = enabled; + } + + /// Get current mesh-only mode status. + pub async fn is_mesh_only(&self) -> bool { + *self.mesh_only.read().await + } + + /// Get status of all transports. + pub fn transport_status(&self) -> Vec<(TransportKind, bool)> { + self.transports + .iter() + .map(|t| (t.kind(), t.is_available())) + .collect() + } +} + +// ─── Tests ────────────────────────────────────────────────────────────── + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_transport_kind_ordering() { + assert!(TransportKind::Mesh < TransportKind::Lan); + assert!(TransportKind::Lan < TransportKind::Tor); + } + + #[test] + fn test_peer_record_address_for() { + let peer = PeerRecord { + did: "did:key:z6MkTest".to_string(), + pubkey_hex: "aabb".to_string(), + name: Some("test-node".to_string()), + trust_level: None, + source: None, + mesh_contact_id: Some(42), + lan_address: Some("192.168.1.100:5678".to_string()), + onion_address: Some("abc123.onion".to_string()), + last_mesh: None, + last_lan: None, + last_tor: None, + }; + assert_eq!(peer.address_for(TransportKind::Mesh), Some("42".to_string())); + assert_eq!( + peer.address_for(TransportKind::Lan), + Some("192.168.1.100:5678".to_string()) + ); + assert_eq!( + peer.address_for(TransportKind::Tor), + Some("abc123.onion".to_string()) + ); + } + + #[test] + fn test_peer_record_available_transports() { + let peer = PeerRecord { + did: "did:key:z6MkTest".to_string(), + pubkey_hex: "aabb".to_string(), + name: None, + trust_level: None, + source: None, + mesh_contact_id: Some(1), + lan_address: None, + onion_address: Some("test.onion".to_string()), + last_mesh: None, + last_lan: None, + last_tor: None, + }; + let transports = peer.available_transports(); + assert_eq!(transports, vec![TransportKind::Mesh, TransportKind::Tor]); + } + + #[test] + fn test_freshness_no_timestamp() { + let peer = PeerRecord { + did: "did:key:z6MkTest".to_string(), + pubkey_hex: "aabb".to_string(), + name: None, + trust_level: None, + source: None, + mesh_contact_id: Some(1), + lan_address: None, + onion_address: None, + last_mesh: None, + last_lan: None, + last_tor: None, + }; + // No timestamp = considered fresh (allows first attempt) + assert!(peer.is_fresh(TransportKind::Mesh)); + } + + #[test] + fn test_freshness_recent_timestamp() { + let peer = PeerRecord { + did: "did:key:z6MkTest".to_string(), + pubkey_hex: "aabb".to_string(), + name: None, + trust_level: None, + source: None, + mesh_contact_id: Some(1), + lan_address: None, + onion_address: None, + last_mesh: Some(chrono::Utc::now().to_rfc3339()), + last_lan: None, + last_tor: None, + }; + assert!(peer.is_fresh(TransportKind::Mesh)); + } + + #[test] + fn test_freshness_stale_timestamp() { + let stale = chrono::Utc::now() - chrono::Duration::minutes(10); + let peer = PeerRecord { + did: "did:key:z6MkTest".to_string(), + pubkey_hex: "aabb".to_string(), + name: None, + trust_level: None, + source: None, + mesh_contact_id: Some(1), + lan_address: None, + onion_address: None, + last_mesh: Some(stale.to_rfc3339()), + last_lan: None, + last_tor: None, + }; + // 10 minutes old > 5 minute mesh freshness threshold + assert!(!peer.is_fresh(TransportKind::Mesh)); + } + + #[tokio::test] + async fn test_peer_registry_roundtrip() { + let dir = tempfile::tempdir().unwrap(); + let registry = PeerRegistry::load(dir.path()).await.unwrap(); + + registry + .register_peer( + "did:key:z6MkTest", + "aabbccdd", + PeerSource::MeshDiscovery, + ) + .await; + registry.set_mesh_id("did:key:z6MkTest", 42).await; + registry + .set_onion("did:key:z6MkTest", "test123.onion") + .await; + registry.save().await.unwrap(); + + // Reload from disk + let registry2 = PeerRegistry::load(dir.path()).await.unwrap(); + let peer = registry2.get_peer("did:key:z6MkTest").await.unwrap(); + assert_eq!(peer.mesh_contact_id, Some(42)); + assert_eq!(peer.onion_address, Some("test123.onion".to_string())); + assert_eq!(peer.pubkey_hex, "aabbccdd"); + } +} diff --git a/core/archipelago/src/transport/tor.rs b/core/archipelago/src/transport/tor.rs new file mode 100644 index 00000000..6527ea1a --- /dev/null +++ b/core/archipelago/src/transport/tor.rs @@ -0,0 +1,102 @@ +//! Tor transport — sends messages via HTTP POST through SOCKS5 proxy. +//! +//! Wraps the existing `node_message.rs` Tor messaging logic behind +//! the `NodeTransport` trait. + +use super::{MessageType, NodeTransport, TransportKind, TransportMessage}; +use anyhow::{Context, Result}; +use std::sync::atomic::{AtomicBool, Ordering}; +use std::time::Duration; + +const TOR_SOCKS: &str = "socks5h://127.0.0.1:9050"; +const TOR_TIMEOUT: Duration = Duration::from_secs(60); + +pub struct TorTransport { + our_pubkey_hex: String, + available: AtomicBool, +} + +impl TorTransport { + pub fn new(our_pubkey_hex: &str) -> Self { + Self { + our_pubkey_hex: our_pubkey_hex.to_string(), + available: AtomicBool::new(true), // Assume available, checked lazily + } + } + + /// Update availability (call periodically from health check). + pub fn set_available(&self, avail: bool) { + self.available.store(avail, Ordering::Relaxed); + } + + async fn send_impl(&self, onion_address: &str, message: &TransportMessage) -> Result<()> { + let host = if onion_address.ends_with(".onion") { + onion_address.to_string() + } else { + format!("{}.onion", onion_address) + }; + + let url = format!("http://{}/archipelago/node-message", host); + let encoded_payload = { + use base64::Engine; + base64::engine::general_purpose::STANDARD.encode(&message.payload) + }; + let body = serde_json::json!({ + "from_pubkey": self.our_pubkey_hex, + "message": encoded_payload, + "message_type": message.message_type, + "from_did": message.from_did, + "timestamp": chrono::Utc::now().to_rfc3339(), + }); + + let proxy = reqwest::Proxy::all(TOR_SOCKS).context("Invalid Tor proxy")?; + let client = reqwest::Client::builder() + .proxy(proxy) + .timeout(TOR_TIMEOUT) + .build() + .context("Failed to build Tor HTTP client")?; + + let resp = client + .post(&url) + .json(&body) + .send() + .await + .map_err(|e| { + let msg = e.to_string(); + if msg.contains("connection refused") || msg.contains("Connection refused") { + self.available.store(false, Ordering::Relaxed); + anyhow::anyhow!("Tor not reachable at 127.0.0.1:9050") + } else if msg.contains("timeout") || msg.contains("timed out") { + anyhow::anyhow!("Tor connection timed out — peer may be offline") + } else { + anyhow::anyhow!("Tor send failed: {}", msg) + } + })?; + + if !resp.status().is_success() { + anyhow::bail!( + "Peer returned {} over Tor", + resp.status().as_u16() + ); + } + Ok(()) + } +} + +impl NodeTransport for TorTransport { + fn kind(&self) -> TransportKind { + TransportKind::Tor + } + + fn is_available(&self) -> bool { + self.available.load(Ordering::Relaxed) + } + + fn send<'a>( + &'a self, + address: &'a str, + message: &'a TransportMessage, + ) -> std::pin::Pin> + Send + 'a>> { + Box::pin(async move { self.send_impl(address, message).await }) + } +} diff --git a/docker/lnd-ui/bg-intro.jpg b/docker/lnd-ui/bg-intro.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b6cbf4f51a9bc4391feaf207f16b65a37967d6d3 GIT binary patch literal 1077586 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%0AwlJjLBO&m7_a zu9!n_8{oXb%e`==E;B8Xc6EWD97#WE3sMiS1M>&4Ot3RKgq*^W5j?&kP=c4Xr8%{c z3k(81R`^M6^pdvlM=xuCwJ8gx9VL~}Trgz(sPlBXob5fHkV0nM&ZfP9{!~L`;PI}U zmI6IhOfksjt?ZRywNq=dgl4}+Ayt%RL8BHTb56<;YN)pzL*h3L^y7b6sjxtgA2pB> z{OjMukl;j3?BZ{#6H42#5sQzsxFOFg(9%1#%Y*l41Qn=P`F7|YbhllurC)o*nw#Z# zud{#cA{9;yZ@$i-W#@|!x#>~y)ZNv{YR}|bu%L~{li*FB1skJ^R~c}YjN!I^MwB%r zGvqh=4`{@J)fKNW8lH2FJXJp;t%*D}VNzj4Z9}d`r`15kqNX*pPG~17vB+!>3P;w- za2{ERyshYS2xipT);9ytnl9fuE2hfj_bHmEWrb=_=JO?DkAJcqeXgP&tfvMye#*;q7OICF^WMvh}Fzlp6k6ur_ zt-e2|Ov{9KU%t(TaPhZ*cEr!s^vtv`pZ$&84^wrhv6_hkr_XTNgzT@-AE;~4RAaO{ zCDVvBPxXVNnClF6d+dKeNA2jK3)2HACoktHugXk;0?l*}haslk}Ut1pcxcN-#>aFa;e<0^a0(5~`4SKZ7#4zFHg<)10e~U7Qq2L*!?Wz z9q(x#SH&1cJlt9qm0UZ;A3=>PwL^l_7y4d>i|Dt@(c({I6GH_j4~ge5)!Mo4$#mc?x9IqudIS-xd{C18jmK!o=?I(J{Sn^SdHrJf z2f-b)#O{N&03~*MnTaA4_n`mjCqbeQg~%46ISe+72xr{6pEuV+bNbaJahE-?xlhz+ zRKq_B6+9p&&Q3=XRhW*ZVP`Nc0BXd|0HY_xD~|j`#LvO5 z%rVy=Kg%_*N)r!LEEhf+MK9a3KJC$4=fH#4I=(-3J1Y>oChoYc^_vmAe1qa&LWVdU zJ77UZ;o-nvW8`JJy2Rp@ycwIQXEEXdo@yq-t;ffScFwozYX5&5+PCW(yVoD?;FEv| zDOi88bj2v}k5ubH?44FBq-!3^TM8qoPvQNn&@qm5T*;?4@1wb24w?UZim%tCdkLS5 z(N;c9D0v|;Q|*hvlNXGasDA9_-iittC3zD!j7>om5HHmhW&R+^OIT5L_r}4RC`hTy z{zELs-Wx|A7#M{mO}%ZcSe^(&O?sm~J!*ExKyy`J_cbQpUAjx0c#(gGRM6?kTvJg& z=(hOvfqWKh-!KOJ_Z%5*Osn@aM;Lg)$cgVw1RL;+ZlNK>sodIxb_dN4wmTK^Xx6>}qdpsi`Q6 zcVLg2*m*_{Dpf(=2_eissVqJ+9djdnkJ~ zV3JnbJ1FZwvOc?n)d5%ok!E0}h9KCM9|4HNG9g+-ylRI0n9*zfm!+GdusB+#SM#aj zRdc@mBz5ydWMh3cKcz@#T{Lp#x_;g$cDesAiVQqbX&V6cS3#Vm6FHC)^sa+7nIleM zJ&-;7w)iA92CG(2xbW3XE?8o9h#OqQW%)1o0gn*CRKV#>)*yvuYdsC$qhXrHL6e@a zz@wfCP~Yt0q=$6vYx9UDPy@e5oc*A;jqteKh?S*O7EVGBi;i|zH zmf;T$7l)|Y9G)H&&6H-CwqhMYP$;81Z{d_v)`VhE#P|SjqR)j<0tCYEGJni`h`7bg zgP?3lp`se}TaA6zXt%&hk0*=Psagy>XirryjGpNvuBo&R!^_>>K5;a#NKzS$r8Q_x zxuI@vsqfHti?w~}EpVSF3$PUFW$cuo6S|_M&9ZTh+bi~z40K#4v_*iz4u~YyYjwx=KXqQp&;S)Y}3dS(GRmQmI z_^pjPT*Jj@5p&)V+-?xaKggd&mYJa^1iE_{y_N^$poRwm z`6Pzbh*p8YZFFcXHP=SKNof~s>Xg_U1acyV{=;x?84F#v)#k9PxAxtc5F=x}Z45?_ z_v#(@SWFgDThcIr_0y&4aB+A~C_i3`_SH0YtJy5!6$e-3!PwOs*Ez1+*Z&KD17JgAeBwo2KbtAVd>Jh}AKEMw#G>9kYcVs1#GdDDWUwdtwDt8#wu<~m(SlJ|sovPLz9(zBqE5>cGZS`-Ro=@)g=m5B zXh=bWj?-JW!Mkoi%P(AJ^cGL9d6sXsCLd#GYe` ztYXmgp^2(r(Yd`rv>~A-*=p?!qww{vf&EVVEf}X_9+X6G_uvH?fRLwJK=65qV&WyP zs%3GRjsPdkve8VqA0s6M`vbA#k7Fjj(nO_AOpLjD% zwWncVCAO%nj63n69>?Y8=KC)?>6`QqrlvunKfR&3R#k;f*>TFU$^ zIFgT3+#(jSY3s>XYj|HgTK|pO+kRyRG%@9@VR=AB9;uf;YrANQ4PwyYx%jR9-8w z7(NZ$r`L&ebyG<+5r^?Eo74YgjGnXsOevMz(MfjJ12mCe{I05IOyP&eOY6~od~Uuc zTo5TW7X6gfM3PAVCW|p1=y(j`1EuTMa?W=c$LSYUZX}=)=F45td8ATeo1cboW|^kc zON3?hE&L zM&IA*pI8@os7gpLbzH4(etOy+-uaIbC)cLE#n$Bq!u+Nw68sOBTiWp49)$W0nl!=I z#KDhLyHki(e30F&oo2l4$%eEen{Ou>UZI*|GfEDYRgaF&b0N1BffbhK?em!a+g#>5 zO)*T|^np^`Sr*yA`A0}dMGQ^P(H&;wJpL(>54#*pSjZLfKP-|->lTY7$%2h>WN%Pn zphn$6sbfs|X|ERijw|<{pfu7iC9#PoAdgB@GyTBYIKgO1Hp1&aMl*G{NsK&r@wT(j zr%Iu#<#}noVKvp!x+ac^Ld+}?GPWFV*V987+lLv01FpR`zj`LGnO6@w&G@x0>q@0 zZ*=uMLBX*;OieIt<%KIDv+t{|%`M!xWaRk7=CM=B|3P>X4meN3kbOSptWlg2)O=gP$&4P7ZQYw?16Ka&F-O3Mf4LjI5y4h;DXR}y&NQ)h;8*49rB zze*)`x=L|9!x4>8nJtZOM4^Q4KMTqM^ByZ1*WZ0=F5w62GM)^OzD1Wh=w`3}bk-Qp zfopCog)1K_*eE5Wg`M;ZCljd+gMqWUb58Vb;x064)RU~YRN zLY%*Q(@oV{Ht8i2b>gBMTl2zIvq#EB@lm%tPPrBDbotKd3$o8a{@XGup+{J{Eo}9N zz}D{flsNzNVXA?hMwae$jp1^g6lpyNS*~D(?+`|)GV!$WXWIO#?XmpiE!XxG3UQ-+ z@OQQ1p=$43O-l1Zuab%*JSRF4a~gq5ZEazlGO4KTmiS>-hycf5sd$c8vU26N4AshH zHl!cLyVz5!Pm+zMeuFj_=5AJyazSH)XS-M0B>Rlqu8guyC2vZ9gy}j`Cyn*uELm7D zzpkX>UHU#+0#oeb;q3 zaXnc+PHd9Xgqinxa5ywGwnmnNxnbJ4YwXk^)mhYPGsT+Q3nQ%)XZu95)|$1M290B2 zaGxB=tR=8VNTx5%tyLd)Ymvrq>vUOX0u!5L@UrNA)PZ99vj~@n_aQ2BAE6lmBx)&d zyvg@Xt6amh{9_-%POQ=dbDh(iToEv&0Xw~1S=_|fA-h&LSZQr>co`hAey>{w zFnk_IzF)@@ck>!N-|w@f5;M@94I9D+UwPvHfhPVe$Z$~ec$m~I{SOZt^ki^Ocezm5 zmv`g?A(nUu+*ZFY)s-&FGswPnMWe!@1V|ZoFCxH+r~9<28sq;U7R?WLI@P zWy=SlpLP7rvqOCA1GLRSk7^(e-@3PoLD6EXtd3jNpQ3xCnXw?KTRxRMyR`pJO+#Kx z0V*Lu+G&5bzbSV3mF5sEkkHOBJRfuhjWmt}#wglHw_klnFeOM-HfTm#&S=7fNUNd0 zBumG6Ja1Opi_W5f)%e!2a6du_U&2>&O1(wU*5DyJrU=TdwkRsNPa@xzJg)n~ z4D~7!*(xm>5~=Cq8`YEjY;)WyX6F2zM1>!E*FTr;K1r6xNM3&;{hQZsdRWjM19 z(+9$+lQeWcZ*9jOcRb?jMgd0HnUNpd-^PmX{lveK$paauX zF6*0CKp4~Dai(jluRE?<+UPbBS~!N4+i~ni6^m4kp7eHz*JAd&edUk^CC6#f$58%@ z93)LOMRhkh=+UT@;n$TLQGk@tP{gtp&>C*|?%X-T**^NuQsx^vQV9l~<;J1&b9iID z{If?5{xeq&^ilG0iUg-2zMO*UHtlW*6F}53Uro<$Er;U0q4#52$Ijr6{j3&$)~XJM z)Y%MHEa3UlwDy-94$$Xm_!C!)t5`k}U z24{0%J~}fBthhwi(9!n4#&dbp%RjYonq|I^gzLUIshgIV3Imff1c9me-or+TtbY=P zuk{@|vq?|S7FugdNRTh%6ai|YwVIYAQxV31btCnZNZIQCLIvhyUcUxRpDb148v{2H zW#(^X2xcd@;4GH9I;D`C0$kEtRtE=|SDIWL?fY0C)&~#RyTI}YR=B^fJ6#O<#wRWi z;8`Scic)U+++A}Kj35X_DC(9Ykg1-g(YGxScmo3ZHYVxfML$^|JNKu%%qt(yyT`kR zbM5P@o_5>c;tRAtfyX~ipA{M*@6vXMh}d`Y@y!uMs=rHiDxvh~5myEFL_P#;6zOln zHDefcxUU|qmNOswX6l%9bY*HC-K@|^YES$1VWo=6Y#^KilCWx}v>nEtW3-e1ESIy0 z74BgA@cgoBe*c3$lCw*=Hkcn!t&=La%0KcvxU;uIk+NSjyOZOiD}74wDZxQ=3-LND zGBc?@X1*{rr-Xx)~p|GjuJ>ZaG$ z`lTphK+|;n2nQ}C?-xnm9nPF3tZ`HhBi1Hz;zXY0`RZb45(#Pl{-zh@Yx>zR`__ue~Cs=?`zmX;}$^s@^5X=#2DUTBiT#sd{du1 z=v>~|g#{RlDA{>r@k8QdpVE{o3k4E3u2uZ4a!Z>xUO{I;EVV>kE(9ET3+_Q~G%O;M zS3Ys@SKWlxvrZz9>utWGFu)j8&1TtdpI&`Y+OdFv4Asxo&po%NfMtk^2IDD_xpw0o zKAA1_+|UyoV&&(^LpkT6)d+B}(9WW1hn~O@eI3Vn@>xMc}hxG38HG>8YK>OQ-;!Pm&Ej@*HX z3rZEq?q>;Wm8zV7I9MCVwxIxSq&|zf(e4NyB91UXNR3hwm8QO-=x$=tRS>estnC@c zB;Ez1@PJJgy~aYu*EAN#h>|`;(|XQPy9&opa>BUkWU_$|jax4B#D-FpxC3!wzg2LY zZ2ju@Dbdwf%v?@_rw^2y>Y>Xya;x$TvG3iBlbG_3slOJ_%6M3<Ip@*Omw-ng}salTjaD3$agQ+}^qU#pJB!Y=dj zsy>YP%E1gOuc=6I-YJ^sGjqc{kRB^DKSDWsaVzrqhU*~S5lSKAh!cC7<|=VA%Crx% zFg%eM!;xIdaCk*(@<}gPT`+*RSLiW|MV9>SItgF+-*OV>(E_21lZ9C8@^+P8YdVE@ zH3LtfK^dREpt|*IS3f;^%DHEmPu1WQ|{0UaSEnU4Hr@lE8Z#)9pRY;6fS}_o7 zpX*h$5vb6b2+ngy5N&<@vN=tBwejMHe}KYEd@Pc)3t2w)TPee#Xhpx@X*BuEXCU=G-O?Pl{n&8w;=`h$6Hcsg(OQ%OCq2|F zPw$-*n0YGuoZ&_hnTksw$V_RTQ!e_oxmM^$dvJE0w(*5Zj~z}rM|y!4{mw4spDcjo zutX!^@)~ogk$h7`^S8bnM>TgEG3|g@i>7w{9~FgUUTS~v80-05*&A%_INB%C8c!NtMS9j>7T)?+E2LVV|=sPxg~E) z^oL$K)9MA|l$k?Q3&Mv4$!80YHPF>0mwYa#(277hBl(kK;8x*ES2eB@SAdzxe`Zqx zaWdN{F3DGe~kF}yRodb^NvfoyBKXsvX=x~Vz#O-WLL_T~^<#NdY;V7oaD#=l= z1eW)d%H zLKX~d!xu;w)Ew+6f2Vj$nW8Y-|A9*LGMSHVT4@YOSj#<76ESMNC2x=5iDS9>mmbX2*VJBQWc_e%iz}|pNss%sbs*uX z{-$k;82m;LcJkN^=cXT&aRrtA!nOPKjR#BjNn@vY7+Crr$nx}E zP%FRVZs@#I9cNvOo5YkzI)8>k4)Px;-@ho(3_W)EN|Vhg=`D38uo!!ZCHUi0#e5aj z2px$OCI9wH@WQpm4}g zSv1PA=EpK&I;9o3SHIvYZR=p|_p6zQYuc;3aVj0upe_i!*yuYpJL|TIan^WqOY*IC zApe@yLH)Pkc)%E3QOUsih|UTok?yM=CgAnIGL(e140s+i^#;X^O`aUXL9X3kjOjKk zsozPFpT>uJipi;Bi_{d8_vXr74WAUD2?O3bj$dC6?x4$4n&)mt#eQ0L0&3|^fEDVu zFKqJrRpVz#7Uj-{Tb3*|{9ufTbxLRw;|Shk*)m#(6@Q$MGQCaj*z$&GJY6Py)P%Hm zE;tcJAtWUE73=bx=PP$vtfV0l{%hR3O2kaw*?zf(9?b33Yl>>t;k$>!ETP%wF6 zrwwKLu-F73xij}B`)%WYG55dZ_oNoxdaTgqY6$>*B}B)0LPn=spcQ&F+bH+0vTK+c1ORi1s&> zY}Z*fy|_2ywSUran_uK(asCzmPY>gh=61^x<-`CVsT%B6#RMoesNZLD(g#ieoNT!| zecu(~XAD?{Ubh{OLI)iIO1`4Svq(hS@6Y%rF4-S7ByA{b6etu)&9-Rtp-U@P_#+!q z!MDYlnNwTGK%6OhYX!ua{Kx0oIKr{);UN6L8nqUa22zgU85ZNq{pqD-3XkL!xDAQo z7S@p$Ak3dFS_$PA7AWhW2!X?At_AB$CnXrG|K~8zc{`+;kOK48K-JxQ!tY+ zfYQ^(<6Nj>AeUe}vktSk{=H2aMIqo%^2tU$8P6Bg*c=3o3>@1532Rv!ctt>HSc$=S zjU3xWclebLdIp%!Y*Ka1kI|+P^1yZ|xEO`XPgW53uF}Z;TLx6+Dcm~n z+jfcb`1(6iDO_3wbM98n3NvRPND+s6Iv@W=Wgvm9t7wVCxo*|p{~S^b&e9kj}ICg9tVywQ$)ojJu}3Eth`@1M$zTCu3} zR$4FV8|sx(O*%RA_YKhI-vRhIjv=_i?{>Yv#_`sOto!=2a=o%f$1#0}e_JFH<%%q+ ze<+8XU%-4VBIEEdoW>_0JGs+-DL`eAT-f+Md!49rtJbbXOjbqMR}&WM;QleJ=9VJy z?>OKl^p&_uiUG&FQ#1^`Sh4g1jm2TvaT5dMZ9be~CEo#PGs4vQb^L{&Kxeb8Vlr4| z#+fUqMA?LO^<6hC@cLA|MwOhb6BPddodv*r&YGoyS1%_oZ}70nChWxI0~L1V)s(97 z3TDXKXs!3Vum$-(Z}Bj$t~nIDP!M=AOLYS!Q&;OIH8zFWNlz2@7{p)h(gFk<-x*f{ z66>=gF-y-1KEHJ8Tyz!&iGc<-*znlpb%SEL4-vJF{Mz(6X*b(LzR>GFXaa-nk zC^?-ZlP9(6M@4u2ofZhfsJ)^CD6*~Aa^KF_a*fuiJIZ#2Kj{RNDP9F5lnB#E^3`!h z`&AZxeml43N?x(Vr?_l>v0K^#x3qEC{Di8^dMZV{bH083(=N60HH5bA%Lvju zQ7)QD7lpI0NJ|t6k49;dV~DJu71Y!#g{T$iRzdaa?cYeZeI9iXx<3-&!!t7L#M#EX zJB<3G;UMFB0aUAog-L%=6MY{>%|;tcU*9$Y8z!`2$&*&*iI~yoqN1!nXIhknk{-3Q z3|=+)xG39MDt&aOqz<+2=zT=At=xZj0VLI(C`kK|Io{7R}@b;&}XA_LW>5C<%%1Je|N|tBESPPz@cp{GP`oVi%@T>(H5y*}MP)(9r0>)l%8sw8rJ5L@%$Z{t=A+cKX zzp(&3VY-sB#4ZKO+&8-dvt{?f9NHRq8n#Z&*Q*=V$J7X;5dd(I3KC-=a_J1CmI}_P zNX74LE6iq69y+i}UzvySrM}$4q(#5or*nW(+Cp>K-K`+Qbh-2>fgwlhU$3)h(LQxa zh(2NCuK6^xVwKwmEO=Rqko(_iMWH; zf44x28SA8kG?%8EG%CWKGqMTK>!*=nsz-1hA} zgq+Webf`@Re%8_uh=1{5u?L9M33ql^fgBR%85je%Wy>wB>yK#&Yfo0c9mC^-${EaY z%kEYdw=QnkCpMk9Y0WXsgJr=hOKmjd8JgtAjYxv`=%rO3-7f@EnZDYaeVSD9fdbAqm7xVdnG z_at=2M`vN3uT;bKtyy9lFjE9wWf<##?UeVtT3p^tHan@ET0liv!WgafH}qsX5jK6^ zXC#iwd_xUcb8?*_@5mWE$x)YD;G7tgzR@L{1bSN*UYmCQLzgYW>Wff5-{U79F@t>k zHo#V31&Ap08a9z-I>yIeWI2OAsHz1|Xj#@1I)37g#yE+F{JoyusXy6_>9!i7r`^Q3 zp6$y>5|2<~ZX{3`c8PJiPdImv7v;-A^uG_xe(+{<%$;uZTUy$3>!afh+CX?xRcVMk#_ZIL z4921S?JQcQz*!5}XW4L}b}`Rs6yv|^pu{Z|1S}|j3*-N+b=P-V{?!zZB1vu)e*C0O zH*Y9vvRH5&r=7gC{`b|r`7vH_mI`0I_IiziMY4c@mM*3h=Gi{rhz#?9SS=!MSxX)N z7-l|H@;E{@^9adGgR4q%t(m7THDKo7XT7gt!Ya}zLZp%gP}9)bOQ8A0Pp?M}p!V-& zULj0szQ$}a({Ks?1JRSDRQp91pB-QR19fm`8qXixy{hTm^0pBB={Ak9Wk#G>$Pb4P z+&}L)FEZ5sjz_-M(6BOHr0CK6-9_OgM=l~u)v`!P8F29Z|E;Dz0H|(!+A*o&h?2kO zxNX7zZByCXnnoHYt3joL*6}dYk5(3lW5T42S!p04X{~-gLUoQ+rkMsa%>L4vw|&`; z_UeoB^S0l(s0_$if&4|+loN*a4bYxMOl8~HraViANd&8~#&=ZMpQeJ?z$PXqY$O81 zq{9yfi*?kf?0oOF*KJTVB`$PZT+;L+;m1CwKq<1N*?7{vZU8NQUJ=W8|+@=m}T zrGyr7n&*vCn$$;}Vf8z2Y1S$-GlOaEcacFSW&JTV1A?R9JCt`( z2lSd|zy_X8s86&7Z>9;D6R;_e2?aM~%Vid=v({Wf` z!Rn%#!ZDOKNZDyO{BiC24`QP0nflYf&{sY{E0(r8qm1*-#2R0RxEplCyyOY(b`&319A6aEobdr{m3!HuP$tF0 zU$7db7zmq1h0QYGHrAh1Zy+oHpx?tjE|E^6w>2C`Q4gh!1LdVP>(7={(JUW5f*c_J zUOsyJTy4Hx5+?D{J%#}@BWB3!_KwZH{1k0NwW(Mxi<@ePg{TS9%d@`fooxg<)HV62e_pwxoM(Rw|Y zrraQ(Q$1E|CfkOJ!e96qXWK=*^w$$B98s73_u(|W)XE!*+)~b}BqIDSA{9VqWff@5 zCTvY)y|U8fK#uV{SIuwoLKwJRG_~43=X(qvYAau?Vvj8XRT}&EGW&clmVOFulyKhAC?MYiD<8WB&ofq`VZKnggOf z{B1s1)8V*wI>_FQKAq-Z8gZ=|N?ZjODSr zKhE3S(`4kBdczgLaY|Yg_;xpLoNEsBS5$?qOZU?rlAQNsml^Ob3jyjZE{iy($!wtJ z8a!njoZSx?J|na)|Ko0iYZf{Zx#mUT>oXIwOras@LBYdsm2m0LIyX1?hH+Km+a_^u zu>Rr?{GewY4`GI0;iST|DDc2+MFs+39>kMm+Whzg>#8`wWf?937CyoUhu_jtRCpuoZR>`*(L zkHdjAj#Z`)59stSQJ%=!jYNlg%G2rTeFZ1S>b@huJUu%};YsN*PMU>Q|1hFenpI%< z=*(X!Ng8PMrS|JVH%Zmq+hha1g6o>r^#kSY6?th42t4%n3^;*W{qHram*gm`WUF_* zkwDj>Fa^2v^|(je;_VvUoB>PnhjJ*o6$X>+2SDz$uoov&B$6Xt&vzF|VtykUFqPb9 zwfajp1c&+e{)cxKHHL#v{iAYD(Da@Eh8?{jG~0n{ua^acl{Ye#-9A zRbnu$wXWjaYNtlgyXlJK4F!s>et!L`yAdTwazWaO+*iq(ePta4_%G2&9;;}kwKvu^ zp#Y*3%P7zf75%MT8({G3sGnu0Si*%YYI6fZ0t3Kr0vuJ6`f2H%w)Tm~AD`^o@gG+~ltoWR$jzxd4s>0x{mlXj%v#_1ZQLg_PGy*f%>RVy&W zzkF}MKRpGEr=iw*t6J}=lb#hEQ^>U&uWcC=e+Rm`hF^hIIo%Dfwy!*&5rC>T;*RE)80j060m zwq2u)EwE=|J-Su1xkzY9CFp-qUW*cLpOwb2x&m4| zfd@x8;8XoO-)G}bKeOm8Q-}(?DY@W9PBO%ae+=!Q0u>n|<#3g&ah83}F|uu$YvnCt zh$N7)#$6dD;@+<32Y_HW@uylKxhXgIJJb@r<|($ zqW77d);@#}8AMqAbdi4ScS}0NB}5RO$_!(nVcNKGJlRRiMz zBTba8n>dVVrW4+WjRY&0p=JPb9c=(f_vO3puN#5F>X~^kIYxRNwYdCzb`Oe(k4BU! zo@m2;+W`?#r;IqF&$f5K18XquckpE8NT6euadJLi$0Ao-YTWRClTbF&15L`A|IpJ? zdDcfqi-1v=)DEiSM9gI+eezL2+j`RLW$8M4g+F9rw3z`guy>Sh~^eWG%8 zK5cVs+RO`WO8JfnOT}XOw#`BINvMOfBF@|QztZK$1W`ID`nr+U#2ZrUytwM(;isT- z{6kJK5rLd-aABm`Y2=l^4P8Ts(_i~1%5%N0ZGC6@A?8H*{z6*5Wy={-KAxo{iYMC+ z`A<3-f^Zav7rVs%s5RTNY`l%dXGzi@JZ-p}LycF!-BOw~=b-U#LbHJ{I*&wmhhWal%mtS@cZ$E@icO#4`#GPydiGE z&{_Q@41si7=WrgM3@d0h++B5}*=&p9dl1@uR-me4Pkp6cmKIE+nGY%_S~^2Ao4;1_ z>)mranL4f&+*kFdsQ1654u3sN<=}7g6ZO4&ZVSTt~u&#r<8O&i>)jOQ7xvFPjU0~v_iLNB*!;)q|^9u0rK~(P&Coz&4+?q#9z^HHkqn-f}h2B8pqJiueI2KRq+Qh z!{a4cZ+Vr%W;6SIbv&*VY@LGf6b3f&K-H+FRonC%Dq4m6Q z5VCJsW4k`m9BQ=o=Cey5wykKwmhtg_5V}dNqIUbbP8vONmU^Z6{UCO>i2A~E3nov; z7B!&GI<-{5*ZPmLe;uF*Ks9{f1}>($sn)BJ8ti5*4p52veM*hcdgqO zFm2!$%*hC&sV(lphx$j@KQc!iMt(BCXhO>_nm&Omm8gqzst%7+HIl($M>dHJ5n+40 z(E*wPn+anpwG9EM>BDDu<@(FTak1$W)Vx<3tGzvg_zo?D9Uc8*89!6s&P)@Z21bB4 zi4}bLnp!?v3Q?kI-i6m2m0!bJe`L?+oK?XT{DQmDU=%>UO@ls`YhcvCpjrI~I?yaB zUgikbqGyDhp+0nbaIpEcxS_H_O8iYyA@fDcG_5sPMBNsr2L8ExVT`&iofzWDtl?u? zh#NJH?Q;>xCY;V_kka@Ay&dHljpCD@EFBo(ki;ei;w??Xw!WQH|83OW_HDZ)bFDS8 z@Fq?n-@?!Ax9MGbpTl1h@bAW&r`aQ1RY+)PSil|qaE=sL#a}1{>mI0x`(p(g%4tSv zNzY{b9*u61|Crk+K12Z&$Dg4=Ukg*vC;OB5cVH74<%v8}x@xYJ=#!vgrEhOgFm`uo zyw30_1&GE?tE-tY)*GkI``)AJojW&VLMm6lAduZYsgiKM@*rwB`EtgR;5 zpEAc^=yItF?gcKM7g8+h%fuxOxdQ9@8p-$Wam(zWUdS#6+{RDzOy2|{#i`%*&f=4& zCi`b9)w7?lr6HwnBk`M$=SAGf;m~tC|5X(+Q@(gWJ<4~neCFZ!VIYa~|GICEG_Rdi zsV*&^TVTlpf3B! zn}2R4{H{nKWlxnWV^Tz+fj7P$nopB$8>RFDY8fS~wd_oh**=tPw_jkr(m?^ZRujWk z$2m&){(*2*z~#Gt{k?UxoKy;V&aX`nw>(vgPVxCGL&fx)TtJp-Rscq@(CPv)X>g0v69`(Ws+ijFQGjwLt?u*~y z58mmFKmAjA1}VDuw6~wPplsUB2}3vh8we^Mv3C70O(IR@4gdre@3dqB-20&6uNsdy zKA-rSlkKZK__n?U3tyYRfh`ZeW|NnEJPjh;R`D&dU>OP6RRQ&HtEhyxl-0GXo1@&@ z|1LOJyD=w!<`ulj$;xcj$gA>(dri~kZ1L>w2g^HI+W5^oO3>3|R7`z2wu)TL1Fy`} zGnI>o^DmkFt`cuUd>gP|+VljRh6xCPnR)W+kkXft_}C=A<{~okd(8zW#!w~^{J)!1 zF!sh*F-b1rzj(xwc+aVi1%Pq96ddKTeNwr1xD8ugrrRc^7jX$rb59PYJ3URJkA{fg z)9gptt_)Jj5`(qJWJP6J>>8t`);tFYAnWSJ-6;+Z$cihRW2f!wCuyTO)baJ++gNe z29YqCP_mOPN&D z(pmb!q1iKLd1Bow?GMjjt!{2roAO-!t5con;TT`z`F+ zN+v9O)?YmA;HH-*h|LKE>Mi0de9(Tfr^bp+&eZFC{8D|`dcxjDNTASHjd2DhU0HRd zlXC`7`=xjO{WA}+O0Lkv4*}9kjIUC~!Gv~=d;D|SR08a^;Wjq4B1LBYUExY+Y$0es z(&Lpuc5HjURvw(W0@51qHc!k=DlD7((b4)86PNV!IRksTg_eX`8jlo8e&6$T4bvLm z2#fbm+E?!l)!~O#15-?|yD6h*oL2_170t6h2!Ck%k>S|9rrJ=ZRfCA<;CEGi_6?(w z2ygRJ);|y~I|u)Gs<6I^fpc~C^BY1X{#$T|;3h^p3H^%VUKQ`dclZYa7vJ^MO&dUd ziLbhO2Ly|zBG|}6n??EhaDd@4_w&9~%mHWqGt@y8uw$~3GSb=S0}{GptzH>^WpsHZ zKvgPgoDvR4!%}W`>UzcbSO;_oc2$J3{$OPL17{#mx@9dFCsPoT_9m{5>%V`Eg3q zPw6B8-+18*MT7{Ui^b4MK zq<0?4dvey%s|w_&d6jIhfYVgS{dbOJb-CA4&PtnP`{VP#eLmdB{E8>ew?*)6^H1?s zOR|+tTxd-ZaM9e1hEDLnL%U=c?fW`@Voe^}XUrE%w)H@Ur%ZmraEvPqA^dr7=%R*P zYVCf_ggu!Rm_q!wy+O`fk|LXYfGUD`z!4rcT!<$&Ge3JwB@7(Cz_uD7wZ3p2C(QVo zh#5M4DQlBArCO7oK@=Jd?eX~sdaps>3?mzQ1)@Bs>SGOA1`{NLx^lfs& zevxu=ht*KS-wC*>Ut7i68hqtPuob~pgJQcg)Kxt>Zlpg`WrBM-5N;|uqrz3wa3c4& z+eYO@t1LG%cK<*|5pUCFz`>WC(EOrpjlxV}9Mwc`3ybxOBhk|KrENaE%jJg74%Ar@ ze5*4}7l|2D1W?GVvuM(RV@GsXo|3cheO23CN=!2A_Kww|{N)b62d%?BwQImP;@Q?T z0h?z*ob$obq;3+Qt;SfQbsDj3 zesaA|2`PLW@r*1OM4gW@l`*eg{oR{PB}g-1H{Pba+2bFGo$w-K)g(vRc0#D^sV70l zZ#hSsDLoN&2K$Z_FhwBOW#OnN!%?9W!J4Uf5}_wYG*#8f*}A{&_TNCCVIVW>)J*|| z7&DW@E0Ia;05iVmz=+B`3Z^ujXi9sU-t6HhnYM4ryZm^4qToJZ^Ex(TrN=eBvET5w zK9&3H-`E6pEj_zA@cUAZdbvR!7mSz}pHT0%K0((0(!^pg{kv`j6=jV#QbMQU*qo2j zY=VK`D@x!9l2P@sgKr2S2SvBM-&+go@8gcE2e-&i(2MuSFU`_LD-xg8WZXQPimg-F z_7=SI7w7){5GCtz`iG~{6WqPs^%wo`0@v|;Rh+n|b1JO=3>3>VUXmT!{Opo-A(j^A zW#d0v$5v-`LN{cj(Hsat|Wr!qP7CH4wJnDC}YQwORCi3Ll zMyx0+U2U@0k_8RjZ&j)=e)h$Wm`ptWtym16t}=L$E_F5WvG&?7=Pw`nowD;Z?XLh9&%E}@S@EgTP+%0mcXrJoQ!z9y0K0`S6H$i1G=(L z-<-_2NdAzKr->;_M6zo#9L|bcsbvc5Q8SQ|(d}!3#+nzMWc8@kplGvX1O5opWeV?p zP;`JhY-NytV2e%4iVS#JI?XWk=6ZlAhIU)h{;@p8E+Ef%Zut5PkCR&P1xMM7aeDAi zIJBp>9DU$5wj2)5#G}tELzd4&NW#4h@gERpb@<ySq5AeHVh>kLu? zK10r9onb;5_EbEs{^3|g({C1>ex?>=NSPZJvl&2yU8agVeMJ%1d8G4nu*ZYzvd=QG zfARK8`$sfC^juuV^9J6!$->OZ&z#ZlPVxVAs%4+{%AQ9jAGl@Yg4f;qE6xfGO0-2o z!vs;NC^tjF`WL%Lp$qE&UAD{6^OTeJb$(yj5XRImuOjUK99n0M<~&kZiC=gY>u851~=*-O@f#iBwoJXfV8&gebVwFqlKFZYqU+dKUMcB*-)%f~0Z10)PBxVq+bt_@}59*#PCM zwLaeXeG@qwA>n{WW%NecDtweV`0RJB-`doou+Ivo>^ZuTX=t8 zsQmsrqo10z+n^hjIyg4a7?zAJp;w0~-lVvU30>`M~t~fTqG=3SzDOpIP9#sd+hw$eE=e2LlfL z)koM~#ECgcTk0i!Uf2(of*S~%f!#U~f0SA;=GHD*4k(BhFb)JLN-zoPMBuZg5@9OJ z|525=mO<8Ntk%TtIq1n{D@Fzj9gdF6GGzBm`+CYhWdFQL)<$S-i1Z?#X?;92AemHp zqFvPaJguHBhUVuey=zpjK`fDo!MsY0zknhBy`-&H)t^V*yN1U4rNIebz6JjS#S(5C zRSmhQ9%gC1{|7=NL|neC)mBX?_M9o7zh9ua7gQT|C`|p$2M4$=xRJm%t^%YH>yTtC`P*7;%}je=*H zvT?G}!;83-R8K0$?J2eUf$m<>dCIoGLd7|)g=#*ohz#_| zK`6La(%j}y@+O~B{Xr58#L5DgFtYSL@Tpi8lfd-Ep#LPo{*O@g0S64Hx9QghDXQ~e z{r3p}PkfA3z2zkcjW$I1gZBr5u9upC zSYV6%E>&6A+cnTZ6Qzcch?J6b?Dec^fN{T*8nVt`>4Twxq$dW_h!)05YWHeS5@lRZ z__{=PGPw%iH{GgWle~pSU(N}$G6wIEb(seEJ@Od+9QTf@C%ZoyEp}kO_;R|_{2c;z zqhgO7r7Jb~aWWvmEZR*Vd{)5;IDSk-VgPL2U$TP7$bA#fh@Ow7Q#-Lv2k$lyCdyUd zskZ*&!{79J^cDDbMK*t9VxT@SChx!G?B41S5eV!?G!(x$(M)_F;W!x_vE@4fZa$@>D*@E`_C^XPy#@%q9@(Savbufc$;m`%LV;G@iF zQf6>RuA`9|FTUyD;@HaSrhVkmn}De!BthEzfDD(bL7@<2Gkag@ZN9_+P?Z$&Nzbc~ zJY%5!ya(zfS{Y?$brn;|Al!fF{AvDP`U zEVE*v_4@(vXFx6Dg|cH+a~#mNL_-Ql)p1*(k4{|nvjIul=PL@}50_o1|LfG|hKp8d zT6T=uRYKBPlXW-2Ova=%cYf-k(ec$qfB3!5kY}Up#)>B#(Xu*47{uWxCOq;k@foIQ z^ZQX1=l=d$t$26m>Gq2C_@}ij9jFg(<6_-W(8sb3ZZAzuF-`;jmdeb0(y@|g=fNoS zBEb}Z8Ehv|UdJj{ocsP*T2pQ6NU{@8iu_pPol8`jnHvS;?c?!{SF5Xfu^K?(=mjR* zTmvK*S$?O%j6$t>YxdZq%n1icK@nc+5ZtHX{(A2GzbJ~zX_(f_|$VKYB` z)9w)XfS|2$OOD&BFB@9X{s|KD{giAchgi@Jp%6veq|rAwY?gjCJ|rA?T{5*Y%xiSH zxfH&Kd_d8N&Qk#V@6ox_^E{%WK+q4D>tI!WB95Q)uTr7dt8z|oImW~4>e`3)6yr+c z|1tGeQBjB8`}fcxiXaF`N=PGv2t${&G(!l|N)9k|cS#H#(%m5vLxa@NNJ)1IQVz(7 z#Pk31JioQx_khI_2gBU=zW2WN-q)vV6`XDCNSj^&Z1!c?%5n30A5G+NPWtmC zeJbvwyy<=mmHKZASzHJEaO?AgFOOSo2cHH-fEzj?fv5PeI9W`g1y6MU3Z6-&nZtUX zOzd$CRP02XsD@r_9jgql^J!WF1nm}D~Fep;2DlAm`>){vc1bhhQ zzRv<*9j5pw$b{|s-E%AF5{V9&9OPy@;;C&yI(9w?_yL$_<6d^jvOLMTxfld51J>1P zum^)-p&c8ROaYCm?yT2ZL(hH8EIz$t`<$8`pIipg0Rq~6?xzUkeo}w2vxM}~n3sNJ zL)&#S+KN_IpEnd}-ntJF9H7oiX|E%a$9c~=m>v_*l)Wf$P7?14nVe08-c9;9b~}dM z{p)+)=v`>5L#^H_HInl%J6Ulbv}Pct41)ig1-~CA`Jfrgs3`%~P;F%iFVG2ERUnuy z#w^M zK#ZdYK%tUrdKS3x0F#$@gRM7H8rT0a$iT{31GK$Vq{{AH9M138ZF~+`Y#^s24GYB# zWoYOylRgfB>dDf^U{vR`e4G1AO-hyQdYP=xZf5X3KX$eY{7SR=y2ut}R^am+LEyvO zkx4jGfCIm{;nX{X2KCVHIs$!Xll$_}e=vT@-su4MGJ?X8=Bv>cTp!Qkw5cr)Mn)+d zr#c`guY9d!&3RHrU8d&AGgcBMCTfPIZqjE0U0SaIU$z0|87S@pk4v@qD{#;9By-92 zlg}m;A7J@bo82mLbsxRcT!6X|Un*6^sVu4^k-p2~SmN*Hxc;@oO&y^4bs=-Q$?6xC zpIfPQGtsb140>%v!JgSXbC!lq)_T#m6eBLZUNyu9&-#$)Saf7kzoT9Nxh4XlU(&y> z^m9P86F&Cw4*bTzOM7(eOgbcH_8-u{a-c|XBUuslBa8M~oiM-Vy4cwuJwH&(McYPy z3XBAb{V%&y_8(?W$uB$BOy?qp&4%H0VxiuVAVgj*=dUu=y_kR`el`WKjqN5m;BvRU z3P!v2R5315iDAx)`3UGg)krPYUc1c{WL;hw5nal?@_znQ_!G#n41R-E&eZgZHPZQg zE-J5t%w(L5mx>1Dc2U~r$pik13L-VZQ}Obxy1KZIX)>|}=Ff4H9?;ZMzQ=!@(~f{J zeJn`&p|oj~Mqo+zD5Y@kP5iJFx4;Zn47kM3f=v$&^!%0eW z6MlWc@unyWTAHWk4t@5?h=t;`6T{DbV}6~GGTPBl_N=Kd($D?vt^fG8v)k9^kfb*& z!+>7YFJB_|_UmV&p+l?5$aqwp{y1>ng)Iptfg!7W^WaX|}LUdOqgFN>oO zx42!MXj2tLxPuQ=9E;I@@#%CPIKUX6W@kLtspCMmZQ#rAd_3b_y+{04KSeDvF5{kX z1a5Db1*!m2^F}-*H1>iTn0Qe06g(+)+5~LFhQDK4^?~v>x~c>)d+3k&mJqd?Lf+n< zIM0wbohC-aX3LEGQIgaoAX~S0&)(KDl~|0ra}qauUpy3=bmx^l%z%G{gUTPUcMyEn z2885S>J9O2LbSpyvcD~f=B1|7xP>xb3O=qRqPu=HYqVnATSLJ(Fih(T=&l8PrHH2y zufhX5^uU)-jYk3ftGKgfo%=oS&zB36iI+hNE2PH2!ynDZle?1d=hq(`yDjb$tbF;o zBmQMhDD^g?JN3z$nurc3Bj->L>K*L+?(%!74M1EWzg$^+2mGd37)mE{RN0dYQk0pH zs8EZkF2sLs5PLqu7&)DRNml01PD~vn#EGT*(VS&ld5EDsj@XK(3IO3`-*R<3uNJo5 z;i^C_8EhLHZ{GfOyV}iEq5=(ytS%$6KNcbzeKSnnaA8}9IC~#NAG4ed{Am}g^QLeF zkP&DNDH)xmpHCA8e_Gk6h^g|Z#yT7f?{}9d@=6HaKS6uB<`j+Tu=F+O|9}?HX{C^s z7~^x4BRF>dqI{=`h&p{-ZbB%;_0OQFe%Uwc!sF|giz$_{jsa!SXcE*wvH z;;V8Kl|}pv?|+yO@>+BC%oz_R=U;MAX)^t=dQ}Cpy_QnZXENv{oTRKE3W)aw@ntun z;cuzpUB(0uQ^SwxMV4c;^~+iHekTl*zktwEkdXGa7>diV##)6b5t?LB-`Jx6W_oQr zWc6|p*$@7!#|QrD{rYgr-f%oeZLNgn%9u|xrzrLx{9r);N$+3cKK5pL=dbGX0<`H& z4QO~z`So5cSeXu8;=kDHTBSzWhk7(9?||)J*?u_vl`9O&Qbn>8J(wh~-Z+;Y;88~` z5Rhv8rcR7K{?VK&ea#EWaU>4MK&6Wv<^Z_?9cv4MO;(>HUAbu>WL@%63I$yHzjNk`tcKOqbKYy|TvP0f&g{%U-%& z2xJ6b7zM;Pi5oJ$R{RE?MuR zN*MD=42Z!H9&Jm`K@G9IBGJ*4mrG^jC0jkssaX^<`=ETP5IXM$F;Ddy(Dua^km_xy z6|}c41P>NUx}p)cc2?kap?&U9baXe(2+pzW?3B9h>ehtJjhG7sq4W5J^ajbJwZaC5 z;hSJ7)*UO@hIQt_%4oetB_=uTd^V{TUB(0PlcMB;fs&nm3k8@Y9tDK@kia8m5zdLi$IF_cc zw6mB=f=oVNX&_bDjyjLU=)Y7z(Z6opX!vq?gozvtH8LP9kc$fD8P+6a=0`;%8@bNj zDC&yh^NyA!>FVP~mY38^q8^uf)efzO#h^$ibVa3gJ#XGr;5$5-=Y^i!-ET0u1SdWN~9CAPg+ zv{_>`bAlL9@PK>-$6K`PPt6V(=E*!HK!$WhoyBHaH4m~Hx=>5u*k1ghrr2#wklQJH zOBcl98xtAMVu@A=(28}vS6`cumTwMChY&`35zwdv!}_3CxAMwtVTs(&%}fb)O#+UE zj4DdpljM>*Nhz+JtXo{p>5}-JL70ou)rW2ulvTcMMgN(*`Z{s37^xX_@~7$LL8j$4Yha;&j9>QWZ@>=7YiPU4A5S#SP2(D>Q!Zb>WLp{06?Db_ZlDij5)41a3)LSVLrS$B~YCfOZ>7J zO=QS!txzOM%OD8ntQ_WO5em2I&;5+DtFyaGzU=%50|vT@xhC%||HGTQeGPhV*R((ZGm@R)p1xD$)dL@pWG^no~z;|{&#zh?SMpR%rv z2iawXy>131 zGm-XFTKsDPaZn4*ePuUT+}c?6*ZT;l-G)H)$*0Vhk~;R@{F?M;6y-#XKdi@PRsv&zF{5j6E)kY zeVHQ`fTtpQ!}{v|)l{*(E-v+k<#}1>8YcD_XH?vbSoy>vjWV2Bclkzj_SPoNYZn|$ z{XPedu*p%pw|xg#U<$y+Yh~(WEAoufNK+ow57kveX^zFFsa zIif%nJgMR!T(9WKhDxJ1xaiqxgfa>Q%sDNOx`K;} z@8Q}txhod~k`ssAZem-ciNV=$WtclInZWR4mp&TE_Q8P`@qHv(lFSP1%T(c9zrVo2 zFJpmp=L6K(DtkLuf%DxNEgbfRMCfRypgn{m#NmBUJ?VPtASY`pQfS@UAk|=-4>AEB z;0ttFySIQA@51y5*w+bBZ*j--Sc**8qD|71XoNQU{p;Ugv{cBn+1^@1wnZp3;7%{o z>IWZl4ljX@Ah(<&KBJhNd&;$-$v#}6cx%_uBS;@9^H0Ze_MJ#^HpuTA@~k2kjpMo( zHP}<)5d=OS5T*TVk*oa1d~O0BjABSFEWhfGMjr2IaP8hPY8+5L??MZkW04S;nnyEr zUW-d=#*vPx@WW1 zgb{lv9Qd5DC0moHuk3AO59pD5T>$E?9=Lt=_?dUGH9;$J&{vNS*u{_8^+`_saoaE$`+|ebu{NRqxk?7dg!y??-t&LYfY$n3L>dY zT=EyFMz?S7bPxEJL zK9?f2qlG+hqSLQcpWNniRe)k25s2&RtjNDoY-W?rk-c~=(iJ~>4yD2p+5i!ls!T!s zCNZ7*8ow-s)d1qIRI%LCqMcFJ%A)=4gF!AavD5m{Fg=2Kbk)=OFFj~v3bpXt?cnH$ z={;KbCl*6|pN)@EbDlB(_fG0_HDG|C!-VV-`t7X}E#r_KocC7e*`|1~6OtMwa+kxU z>YHH^Ihyp^GJ7XD+sC?z6i$+MKp4x7sO1-s_$6g~!geeQbLy!z_1&a}dpY_web8!v z^pq)k?+L2aQ;mpRd0hZy;?|bPn7O6yV)k|y(1zrEPohP5xqq@vAQdh$xplkmn00Tu z&i~Fg=T0tNds%cP#W;VElnEU;`1w)c^Tgdad^#+|Dpw%V=s{Bp`V6$I06K^_*D5)( zuq{USeO9Ewi7&CK?6SJ8Gg&j8W>0*#a!=ksb|}d?#u-6yB))KdUqL-=4IL#AxoSs) z|LJ~tk0MGKX4o1(2G|H|ha9lX7qL%SZ%}kr07*3a<6QUsy}P4pPDfwjck+^^HhEDK z;7G{)l3Pnl6A_AE&EBTd9(Ki9E~cdr*k*NB!W0^1>?Sd@=n~EH@hf(3szB+xKLNlr z?2tQkzz(R9D92HVB=!tKEv{qPg)Z}+lUW0wyXr`+;A=5O;Sno*r(#%}U8s8=y{8;2 z6B-)c(^KPLw0Fm~js%u63Wy)1ZvfCNTKmZcg5D~}KR4wen4>dlAx;wIVY&+xMcTZU z3@yPMhrBJiixOmO1a+qHCsR)a$j~;Oo^$#1|6y21;Q*B)L~J7=1N)^|WcPUdE`p=2 zgX#r81xKtU&7|M-Z7Ji|2mUS2KEG$C(+&^0g9#D*CHS<|d&%Xuc`qA(HX=9C&!YFb zIg-{smnnNxX8aE7cqCFrduDYmbljUbKmSWDcZ-Hq!5~c{2mXDw6wN58QdvZ-fE^@q zfKsWmIk`uGy_c$q+R-y@Ke&DVM2AzPb)n1|=L?K`lqC&{aPlTtH?UPq_rhl*I=6MtvmOits~#_EDIF%TXj1fHU;I|;F#Qfi-d8jumeFG`4OAlCJX8j+JnQG$~!RTDhiWs*MOjy)9f>>5n%0(RTtpx>$IP7qYvrOC7M5`f`~!X+wp~5F6bNROF&M zuv7C0Wm>${ES7_Val1;%4*-kEiA54RdLtS36j?Y+!u(~z`=3P=-%X517}w3>J`M{D zMYAXWH=1)zu!I1C%JW(?Y2O)z{HSRzu(JKhpGiuLy@G9N{O)aRdU7>#|g)^a+onze%j&iGwBHgLq5 zl1v)Yi6rL$z*kwIO~Cbpo5?oLE;WR{v!Y>TKya$9|1rDy_vnnZo@CZh>i4Zf8;^YS za;H}BFqOa)rP%P_1J2BG+V9#p5)%QkoB<3Cr)-~&M=y%+*OjO_`O>`_7EW)GBs>5% z=HV1vZxZoW+i`;jWpL1iuix2To7@6vPb6)~f1~qrrYd1_MvGl{l7l3x#tscEKCn`^TLIEyCo7* zwHl^#;NseYiN)qZvE<-$f4Hhd@7v!N{OzPN2>B;j_x|mr{{fx##_Hwn!w<^8uCjfH z;z#T=t0LXlzwChYmvZNW9BXBIBwLf0=&$CES7D0*6rp<$8IvQn=46lG2 z`>yis!W4e|cK#61afpJK<=YF*v zR53j_cQ3`bmp7J8-_x?uy4L5Glh0AxJx-gyoywMbFrev?Q_|W@;mpO=LwQ#}mXcYL zc{248tawIGoU-rQF@LDA-QSw4B<8jPFH?(&jTM4FY9xFSd&P`=>lZCDu7DTBf4t4j&-Zxbu0knh97FHL`M=8Ozjc0 zAA<|^EVIFbiqk1}4!0%9gIhN&c%&CH1&RZvFLMDgF3iD*Fh?9bh2I!u5AS&t^^%kH{O zwbpj3NBMZP5_rmRcapPW`)7kXGo642qfhI>LF=_)8IR`rz{>`_P4h!7D1+;qUf&tG zzywt0EeNz7Z>QI3-D;GSPqyI9nLJ67G&uZN-lQm&aRljR&r)aqz|xZVd6Gm&Y#|&| z$^IUdX)>dM=AzKqjgCye!D0S!4x7x|jg;V5zB^f)J76F=qg-7ZSNGOpjy8)Usdrqf zid&fACxndqYQ_6FQf1k{I(|b!Gtwmk15FwS#7(*u_#lBf9ZG#1wVZ^UddB}Ag) ze=bb_{hRD!oEgC-U`~kZK}?k|bREt-D7D1oc2TYI_w!+5(=5X6nzu!l$@^=Fl;CzL zcRNu~Rg_1__jCAFE+gI}yU87sj=AGwR-vI9iNV!gLWOFPsN8oOUscs4Z5A_>)WJ0WHdu2A zgYhW+o7MHzcia!=HUF>zN2V$L|ld!wCHpIi=PRT?)f=>peo=sdlV`30WaRv4l#`$$oy&qblE#43}^>edKFRZm( zc_6m}wgrbpyE^du{sD;moeRfO?W?44Llvv zmUk5J%nhB%wRhAq$$={H*fAU{i8PtBp3MOuZPZol&*TbFWd-RG#wRg&^r~bVrp8X}GTYLhX zWBVs&tl8F0SS~~t#rMN&|Mvrhi2Towi~>{~;zeEj|D#|!<9zg;v6W#mb1Rt~MPerq z5^sb6=l=gY?sx>CSZys8Wyt0KVK9@@Qq^Y?r5~0QM&paT|9&E?8?Vki)M0;iHw}|G z?T~O-w>y_>t0E_MO{kcueT3(;N;wnJKM~fN@A{*FxN=%?aC-E0)5KyS*AzK%DmP;F zq2j~SWR|Y6(?7?i`oB!*X52AxbsarZAq7RS;))|LakweiIO77Qez;_S;TjqeCQG15 zc=cERr--9NRnwzxU=B7o&)rWFH9fsEz=d6Xc{ShzuevWSJ#I)vwJ=>|&(3`n2YVx*M?fm{wX9ms zCnr2oN8!u=bhTIHS>&6U+SS#;lT9j4Os~AV3^X6dg20o&=3Mh-?w{MrRkyq5S37!0 zcA1332e@6%ngMEMuOBvTEf+n^kEn7!e7ro$6Cr+;F$f>T(`#%)tQrfNW1NXlj5!Q* zt5WvsfHJ;0RDF9NSD8A{EC#*6bXO~m)Z3ZNqX(`ZsX&;?ivwktE3W2OQEX+p#0f0G zd3oI~@~BHO1vleAAj9=qd&sQcCtr0S8{-{t^}}IrJNGLesXICUj+Frak!Ih=Q+`e9 z;Rb@MXL^;OQ{FtW6^q`^o>mhS7^%TElAatL6xB&ttI$23`L~cUV0+?8_nL~FC^`r# z^gDQ6Fv0Exja9}A&wsO1rc0<-D(2cH(o5LE^D`wf_MRl+TAJLK_~ zR+f*g_(mofOkVc_?42&#f~t=F7r({*L-2HtwW|}cz)1AX@5JQ4T6ln0El*<7u96-> zsUn@P9=!a@qO+v&7+^GVovxDmP6|Obxw_c{YdKolpL{hZ^Xs_%&N)w|rTVNtF|5y# z6>D-=84jnIW?{Cp`G$l2Y0~{z4EQbx??1v*RZN<}ZlXTM`?{Os+drM{S-SL80y?Z5@ zQ7t;fDbU$sm1~(67Bf6?a@%st(b6GIME8b+EHu`48U-g`qJ@RR9Zt6)7ng;Hdo*cM zd`#i^MAY9-mkP##1Y12uHGuK?qN^YC>t7vHO0x0XCmWW3hXw!Y_K<1pqe6 zF0a#ibu_(UO7f=rr}J<_Xc$(n(D&_Bd)Zh9H$ZoaQ>-Bg3v$7bN^30pV~Z&xKx7*^ zU6%9TdbnG*y0r`IMcb3g7vF`jUuExSpQ~q{PuP5dGMJj(f3I&XA3Up_nOGr-R*i{b zlSgobn3-)ev;spi>P~C7`%ZZ`{6%;t*Li0Ifi}WRPj@PJMIV7~Ilmt=yxnux^aP1q zZe_n@eo|dS-CO>?g?i)eJ?Hbz5Ru)KUTP_6fM8H;*TjAQ)pi#vGB>pXl&~6@7p&+5 zahYfN4d?f@#>do@`VVvAlRzOjPbT-Es-M;qlnqy<90MysZ<-*2Je4x7)w}b`SGsfQCjgPocGhE(b)*QBL3h~$ zc*p-WlG~+F(DTcV&33CeuFH?`X7vi?epukO5%8Kat{+SuL75suV*RB+*Ha^}8z>e~ zM;G?VfZV|naUoBdqQj1hKfKLCFAA4?9~mL0neQOhurlw>82;L;Ci7c0ti;{SZ|g6M z_%R*HR?Sa_r?$oZQYK%m$Of(}roOnSiy}xV>1LD_v&x)$_HwzxocPuP9@1gR}Rf%H{Gp!NQt0qVmd4VUf{<{~Yaf^bUP7KZCgN?c;jMP(aa3MeW}krv z^qb0y^Mp4(@B}<1>PvT;DcHQkbXx}(5Y}|;vzKo-i8w_yUNg+?xT9Vlwyj6H-Lk8< zbO-V2^9c{qg?JHHgBx83yg#*tJ7j+E5g!D37uCruQxZFJ@&)8{U4~Nb&a{wUSK98h zdzfn=xQSBmj-Gg4k@~-BJP?tm#Rq>U%d<21BZ1_F2LnPtorWv$NC{l!YDzz@eF6&5 zRrDuc85N25I8V%m57^zuHfXmKvj`RMz1U7!Q`?cT>Jh?t!}4p!Y;9l^qe|L?a+ct&58C~)LL#WL`<9=}QsFzP^u)%(CX9lz%fq&1JRI9! zD>Jzl9f=U=n4;vm#&nYMX3`QwPofswdOln>=}uQedJ=MForq$YPA)&bQD2p+2_NZB zZ)LGl+pihKrl7v^I?Z$tjRD+xxdJ+xS#Ae1=DFs&L)X3A@bZ^e%(BG)ecNHitE%kT0{#O zvgqMrK)^Iwg=O0(*t3;EVW9v=Dbf;4ns!A@+RO?1we9=s5Dkw8IXYVD<@I^N#gni? z$R!^7eCDid#TdoaU&x>3IzzXYwslB!)1;Ip#gl!E5<&gdPPu!zcHcN4mLhFkVYv32 z8vR20GM{ss{y$=LtV1EuQp6qS8uhuRNBJFL2nhO8c zyS;B59R2SuN7KsMQ?sdi_VAmhn0PoUQxSBt>nI zw_@S%_1BQu-idiEB{pLBKbZ2;Hl%O)j;?0KELM=+&@8XEVj`t9M<13n-L+nQ`BmO2 z@UddESw^}&0jikIA5uOYK4C}cj%yNK4`klQPbtjJ8i6CFA%}$YImu(Vpza`)PXy6M zgs?L6YW7Bg0Hh*L-~D=S9!QY(5M=-BB&g2N1sKRPIsUr)K0xZh@H&V&s93m5dH{cG zrLSR_7O|cc8w`> z4ftHGHqPJiT*jFxZ19`P#J5L2L9M?~o9~`khl|Ts9t`nrVy{NoEVPk$Oh{rhfDw0p z7FJD_aJD#VviQ%sXI|UPh0V=~=^tWB4PV)aTL+ybfc?!{jk?i988?yLPl4poU6J8x zXTJA^5|Vu*ns3SEiz;@YD&AMBu2#uN_d)j;Ah<$C{?&ytvSEq1}UBf2dCTsk!{a zNL=gwQjWw9hG zdWotxV^=iH_|R{xcQ87cAK4B4>U(B2U-gT`O9|ctQYi1M9Wf&Rf&fOu^fr> zdQ&oIbiPKAyR`2LsqJ=FJP=J|pZQW53XQXTKJOYxL=X!lbYe!V9`A>Vbp?6>xiIw& zmrTGXVtG2%R?%jBLIOx}4Q%4H(r_7QcnS0!=D#6~XN@2!D!*U?#z(3Y6%$s%f(Bh< zBUl+kT?foG+#RM*n`EfOgTK$q6q^iM!4ix8oU!)eM2=l~)cD>}>HY__K~IrZ_009g z;3^=c-;z8?^rc-;%Mz>qa=h!oftmm|F`~)yJ?YblCB$dskheCl^X;oE_L#(?=o5)I z!9_*zw_=ke7Rb_<{Rw!yk9&K&EYv_OG&cE1oyfPbFxbU_*u(=udmD6DkVna=rJ~;9 zpl;Uj3Az62&^H~RH(u*FBdJ+$jG-8S6oCrmq6u( zZAxj(fIZ6Q7+B_p-NJ&~T>Tn)p0SyLN;0u%b zOy;0pt^w+FaAEY`U&6JY9lsz@?Tj9iZ0*-09fP{G0xc{ellvOB8^W9%QMfuImx9Cl z2z}2tgpc?MRM>=VB?F3L_1juS{ZaqVA#7XyObzLeFd6Ec1GFzoT#rsH_5CmC9V%rmNbJzlac4pHL?7lw9Rv zlxkRgH&g=fxR+yMJZ)l?k>>kB0szUSv@yx*gEocx0`@KBK>Pgw@g!Yu2Rpi+&yXe%Pd)I*mq7oJ(faz;3WaKuGPJ?zTtU1yHXVXV=dEWb0@ib{rNU zzuMSvmf$#t-Hn)WpXXjH*41gDDE^YKADtv~JmT*`8e2jrei%W&ZW@fD#`Dt4#PyWb zWMK6s$H#k$g5QTpY%0Fg8DmX$*(qB$xsq2pKqs~;u|&#N*uJ1uI6%#hR?wW*Pt7gt z;W?4y`0RU=S15|T($?B}jRWl6>EXyF9{F$ZrxxF^oC!)LD!v#SmW(A0KivgVe8`O` zaXq>1q$s5v6OZdN`VPzWOavj5umFnHY6BaK$#NE2KD(#4yWX7jxD_^U(OKPGUqmzy zzoRRM6cX{Kt&gS(>`Ms|;4Bq4A)Z*XCUNr6f_A+?)&+Y}cop$heGeN`*;^;6k090C zlQxIVM>bdP&%Jr?ChAGM%1$k5D2zv)*welYK6!9%_DD^cYx(xG(BS4*0aSuF3+S@U zM212GpLwwbjWwYNIE#;5Hs|1HJ9b&MU+h2c0bkjG)PhbNFvrt1F`aA)MLY?zQ=o%q z1!JRA^*zhFbnpDXGBI1J3v-^18z7@cREJsYz3Dx6wKOCI?2fsYSJ#%wPL^x?g+306 z=h@5j&?*r9+jx{(S7dllW6nFUW}=%w0xHp#+HzF70qglm6v_Dtj@0ws4TXL!4ks~t z+VW{mVeYzz!}$D;GEl2IWHmp22y9utQszAL zD|7(bZe-fXMcvUvtc(iOXg8_eme4_}N3wdm+1)CI4@8fl36Y$dl&0CbddcqwI>xD8 zG_Zm;phIc>D?&R8vQ##^3L3_Ne-3F`o8X@;SH}9W4M;$o^16F***?IPkT(&pQv}A7 zd<~8l*BTKj@VV4@LrHr;$UmmG@?IY=Q@*neNsqz>BZV8ibfep52+|aKs zQOC^XefzryI+T*o%4MW%9`B`Z>d6aa60XwL!f22N-JR~0b(2S=l^L#-5Qv5XDLXS7 z)|(&bRj0n{f2f)P!|A(pUp;>e?|~f4>0p{nt^d8bZnOCp

k+Pqm=d0-B@Z*S>IN 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

~^gOzAqP0OoHmj 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

USH_<`lR4m$mEfY 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%0AwDbH!^bdp7?7t&aHL+9b9!V71d> z({84Q&LJY%#Nm!k8L^T9;AX1$t|;Nx;f^F&)M@bisxSsao&{KP*bnIRM@bs3k6a(}BSr5NKl&2ag+N(+ZG5AT^j7Kq?R%Q> z;AltvGl%~GLKWe#>7{!iwt^x?jQXCSCIG%<<;*$>(4*<{W?1_OW`cv{{YCV zq<%m86IKt00)N6ms4J*%Vm-xgUkvzLM;`wG`!iQP;r{^n81)0~{Y7-r`y^Ff?9QRJ zJti31Q*HoO*hr0fjw;9Ym4TdF2!4ILfY`k&kh%W=kaYh5_3+>N6==5_xc>mIAJ)26 zMsqqbv92|}H~x7azvcbK>-p5t>b4R{(IhXF13WK(#<G2^flPE-L*zD#%pzDi4Y{NBg~{{8Sh;E^Xc+l zNb+1`=fEL2z~Zs0{o5T>WA7DYF~Q7pKR$p~_lFwU!G`6SN1WsV)K@V(ShFef%MRo& zG5A)VlXIp**p}gydFN^VRmsee=}>%=jM~`rUo%WdC59PGWT?RackNkGy@E0Vjt7E3ZsbVw2HJ#cD$ zuk~YT;ppiV2>s~NySdXE@;@o1z;2`g?b^EeBeDiK-QAdSFglK(O7keCi|w$fkUT)+ zC(wWOtG8WJ#syGVGpYG{pYw_HFOI90B2<^NL(oU-$RZolZ#Msa?ZiB+3DMlPKLRmK4r0!uYy$*_AzVH z->K*_%NikPmQI~8D=b~wTbJBsLANB99-iF#bgX98tzHs{zr4-?186z=dQ&wWLMi_M zbjC$sHxk=%khsTAoK`cQwnCj;DoxUaVnJg)g#IRiOSTPcj5%O=0=jP(U1_)1aQQbt zMu7d*-GiTc^OzHL+LmpH8-d5=(zfl@O}v*A4apO!X28H6mDcMh*!kL&<2lBCf)YgV*G~RC?>jB*`KmOs^nUQssRQpmC(BIIoM))YAMW zmzI%EZcurL1Y_>tMGI4Y3Ov{*!ExZ*}j{9`t-)pEKd!%`|acT)wMHN)f}jwU3GjCJRZ4SCp%&Xqf*Pj6F-wH(re<(@J8 zl10YQY|41wv>J*$q?t?y#GxVdX(WZRBFJ5&sQ9jix5*Q2&2Cv&{8+_>WdfN;4| z7a6SWR%?A|+{*IEz?_o+z!*?DPB`MTqngSU9pJ6xd3g6cMHoV?+?sp7-K?$H$dsh^ z;Kd9w7*!VtPw`{6Dt$>(8z`o@w~jJo8%FNgIT##vtpJyo*HGN%0+#Uz;#X4;bv$R& zk6Np1acgTOq_fDrPV0L4`Nh{3qX9MfmjCb_wqMg&O=zI0L_-Ki=D0YU)5?O9hB zx|~W{1~Hc^N+vK%HhT^$DCXFgEqQ+LxY^(+*(H5E*`;r5G`gk4aN9>4M(Cbf^~nd= zijLC8XyIE~Y@?cchm&M$w;(43dt@3q7()Wi)QD&y7qWc7@ z{{S&ekhuh7)3rZP`(CAS4C#oNO~Ral0puJHm-3`A%LU{mrVQ-tGlDyNSJBX^R&eH$ zw%w0A5k`$RqZ>URabceJOP4=kW^oSCxLgCCwG0y7Bh50{yqT1-00E4D4n3-29pqEC z+m$8a%M5xRm><%kx3;?%GeRa!s@ZMX>PCLG(v!OX0Dy8nPFJ?exgDmbA|p=~l%)iY zS#TSJ+b5^tQAIHtaPutPBG^D>0giLQ$>~;YEpDTNND^cpy*>W`I))f84T&*N62wus zVsb*B+*I0DSMB6$cwO4tuH;vDWLm+p&Eomc*I`_S(qG6@Fc+Hjq0~%(wplYKvr%849o)NnSJQ?M_IwBYQMPc*|fh z1HaRXw584e00DM0e4Lvty!(}`bqSg|C63AE%!eu!Mg~6b`4o{|%rwCnv&3XD$pDYm zrL(uxr83GT5tAp~AY>8r=}Tv8disCa)^rh&-9gFZ^sLgIm#2}ey_#=r*KwCO^7$}> zXvn9_#{&l)ho)(6?`K<^bbARDdAS`q7{&%TsN|DTy3_vA<|mdUj4vJf3~^ISXL~G` z=_SNlw~`8W{HXVy-d%*F2-}%1z555-rhBCZ!GkPJc|`~6D30{3((bZpKIz8Q1aZ?9 zG_YQMq&%{0D;r?*%KaCPD2hAgy_P1LEzO4D^&E8Kot^Ce06{KJTcoz`%G!POg5A8k z7JNv4QOU=rJpPp$T@UQ`SuILJ+s1GYIpeQSO1)=odj9}uWRuCnq%h9nNcZ&mQ)9Kb zO+CaDD=M~dIo*u%593j1%ku1wj#zU&w_RCYeMS6;L)w_WWN<=^5$HWCOPlGI?g=5W zbRpOb;45we0|U~g@+W&yc{Rex<@tLf2OikRuWpq*kjz>MBr*R0tqc_B2P4~#Ds3;z zu}xD}(RJ=bFQ&KDR_4;giDObu<=~E|0D4j+i50}ZWwtYKfkWpb9CNpKJ@^$NwYrA- zBCot{b;u`=&9h~?FEPsixjDxJo|vl^R`)^Vi_LiVFlF4knB;NO>Dssa zH{t7>n16Y2@hV(=r8DyYdF#bYr^y??(3x^wtvYu${3oJ`Z0)b^;DDYsg^c) zL}~MlubhH+akTr=>o=N&+GWU4f;XNhq*8Y~FkJ4>r)*c9D&E&eq3ltp;T^U;YgyH; zpHA~F!`vkCmqQY68$jfqm=)n(8yoaZY9Y?)Er9<3$LpliwXI=ZZ650B8Z?h$rU1z4 zgy3Tp%;*h0y`9=bM(4SN{MhJ<#=9v=LW_@~(<;hd@x$BbhUZbU^Jk6~x{&?s{JT$a zU0%I3FL4&4u(EmV30=#xJF^h#k4;u`9ol4GQ*RO+}Ag&%O&c@Wp6c; zCO{eA`xeAX%Ii6jzCCta^0-GpFM2c|Jznee*K8N5$t8OrBR zl%5A9@x^&mnoY`}K@`4cUAsSqy=&n`+;Vu%-W5j%I|oik><2t{^scE{Q}Xs<(C5n88ImBCsTFk!Hw7G4} zVkgOE{{WUGbR*ighc=s>?%qd5;@H+LJ4lH>>~|=u^a8xrObs)|3y?q3m;V4muTAlA zA7s-!X5BlzDTl|kNg+bFVNtnh3*!e&oHWT_+ z*0!>hj_xQ%>4mfotJ5PD@+3%~+1FCESt8_(`>+=%FgEx8mGq_MmHpM#)!vme!*gqA zZX*kTu1L-s+KRDFYyE6=)OKf2d95X_ub8Zg_!vnEUQccT{{RZ$^i4$FYr2)i)VMf7 zwb&iF?Vbfb(^Bz`o$ai8$hBzalqbjmVfkQFbj7f1W8WHmO1meoef7HRDFZQoqyft>S^>^0Mq?R#DGPabATqkjdeK zBO8Cymy8k6j+w7x)@Qu8wz;}Vc!n>PHjYj!u5#tHNT&LpX(q8?+F~q|ppaT@DbHQK zI#(f}F&Z2R+nUM$0ECalGh0n^#a=WAaVnpcS<+(EMw<@VV~i1yr3vf!is+>EGL$VF z4Do6I0Er}n-G7~V1bt7^y+g$j-lmT2Jjm<0M%9e3>yutxA5-+KEBt8muxixV-*|2{ zXzdpR4DY*ubBgHo5G_8;BYY1uf_%09KvzHEpSx%5Wd4=8tce@Q`4}mf;e#(cewEc9 z;eFqs!9U{v0A6IV$-a9xSsBOM5PZrPr_#F3K<3_K^!{SF_<>ijBuEF_SC?gO-LcZT z-AI9LFZ>7jilx-&p6KWF2^u|fQ}WQr*&iq%e>@7Os%jayW@uk@YD1%^Pn(PpkSflI zi2BZ~8FB_V&MLO2_UIy1fmSq|9I445H&f}`rEiD2{CXVtl)HBF=vIdLE=Ssa#?pW| z3yv2ZIP~qsSAzCc)3?uR1Z*85D5I$4=RcKQg3|nlOL^l3q&dg0a0UhjDwV7^5b2V6 zGL9L8t{CKJ93SWSSE%{4^zuA)?Ckd4cONy$@}efhMw`|^LX0uSHi~V;?e^O+EjEUe zBYb~&9)MKSSlxY-B5^3UAygdvymcQ=)zxYK7P)!iy4J2d{{Ssc*w=*{h7YIdSXHUW zz314ts4sg?z03<3r`0udOG|jsp@fzbC(F-Ho}DYdveB)elkK+=#%`O2bQoNA0CeKC zt?l8pj70*3QNRMHuOhZ8QqnpjoylmTt)+-9?CoQ`Hz^nrIT=5db(POR>l~`>&{p^% zhF7I|7?#^tJ8+vZ)KXDgXLz+v@!cZ%JMe1dGDQs;2hy$7iVy2#HyEVg$e7;XkHUZd74vL2g!MN%vl$29j49wM876k{XVT$hb&-n)1kNRZ4 z%D7EbC)vh+_I_H`@b0xFg*5AcSmOx8umhp5GZww$x}0xGSnVlkD6c$#qLBMl81GaT zON=89gW9x=8`zg5i*mB0Wt*leA>@q0yOWhT8S9F5<=V(RxcYZBo059heF`>LW-^yV zWa@BT%;4LMrZ88au5x%~w{4QH(~9nE4_ZLbqxT0NhAQgQ(&tVdv$}!**V1R_9+bj! zO`^LJNca}QiYTB#OH2-h{IGcgII9~@&9prM8X@9920*4sGVQ|iRKNgWQC$3p>h_M- zu#~h>R%R5Gv`_<12*pKF%(9kHhiJznRF$e$Ms4a8QAGkO-l=4 zRa=Gtk3-VCp)HW%Qlj z)%0|g*6c-z7@R8c8CJ&Ll$N(THpv=vhjDYrQZl`;F~xO9rl|C#Eg!o6mN!kPtD`x6+?9 zx+n-Cjv&auoMdEo=~6rBzi5od<)As>t@Bae%LncL9=c-&TunJVJ3?jpEM|v zM`h$51~|ql6#mHjCfS*O(6Rau0SAGB#VF{OtM4jWwwir9AzDmWi%I7yhXw`Ca0%l$ z;9{R}3+;w$zdmyy07OOy9sdBO5=o%}B*WD(>6#wo{ZTt^&tYJec#+mFqI>S!&X$WTPTbze9* z7{_{Zofpi&L@_ci1Do8F$^Vw!2uPlW9IN!{-`J0r;7{&m=s5_X6C`zsDNYZ`BaYQjl7$Faz;xJ zt|}{29B9bb4H#m=J^90R9k}Dttwj1dNh-2N=pO@iPs#^u)OK>{!pz4q$GdyuImjKc zLRPk`sO0p1>*>*U8neWXKstvk%q z#hUN(o_{e*V~>;51CA`6X71{zTb->y)3&*T%#6aQS|x&_{Ruc05|pkN8b&zw6FVS>@Pp#+F$n% z@~{{Z9}7yWq4{{W%asNMen$F!gBpXFX(q5lBLE-z~-fAnQ>;WlQtj)xKBmdAiJ ztbfm>Kl%{=01EM)TUJPJ-|TR%PgY^iOmwej@v#2@iU&&n0Iyho^g8gJQX83dR*GPS z@HmKIWB&lvUc?(q-7t(|+U6|V>l%d6vPTx}yA-*>hT+ z8L_#z)gaQLxti1MB#r~A$(ngb*$T9Qsci`5^H=|@uaD%e4{=E)T z-%N@#4aLabjCoz-raSsn_Y?V%O3U*=xWX3XDE=S+099DNj5GaJx}3WRj5i+yjF%BuF6y2`mq!jN+lO(I2;7$?*1N?CA`ww?r7x^kl!I* z-t}ShJMzlW`AdP02?P07E!<6Ia@K4|027X$yjC-zCA!dRE#H*6B+9b+jLS1g{;>2T z=}$9T{h5{-9hk5qc5#ej>BVG;18#r2yRSj{Q%tOZcP``oJt}zxZib!Q%W<(npuomZ zW2Ixw0tE&>PeWE5KH#a`XP(ru4ZujvjyO?Nm9z?PlGZa9ayTS$Qz%!+z+XXA$XV58 zIl$tV%Tk#g2Y-5`bk4Umn=``@{W+DL{rLe4vARy(_bvab9z zUFp+@JF!*yD94-bMKwF0fq*-ERkZG6KQ9}<4%F+(VY<2VEg)DB3~dLm)}oIHxQqrT z)}~1(WO2F0#Yro98U>bc0!6cbPH?y!bg9`Rn+oxmkr#$uPad_JuaprIa5>xWPPu73 z&oWJ?BcR}Vb6Ikj#k<)XQP{&hvAL2>&crAKfZab1Dx^?Mt0a$@fcY0W`HAi6QN=QS zoS{H+Ffd3eDSXi#x<{6kbDVC#81|^MMpth4C`$xTN3v1-#cU8dRe4ivil{mcLv^Wc zaO5&|J#uqT!3YD9(}P;0p-Razsfk-_#(IuP_NKZC7brjdRVe9<@x}%z%hZ)z_ccX( zSuMH{0T>{1IO*?CMj;96JqxfODTtIHP{tD}Gcr%)@U7(-@%EG3DI~ z!ag?BbIv;L9cgx`Vh;fH%|?Kqm3jB1X$p6R(6O^cD#)jhau3q3ZOD>RcOOwzHmMx- z^r@j$C6un=w~QQfS02QBx4&bu@S<8xc=6vc2+{G5=Z-7Wtm4ych>af#INDns{{SlT z9V1Zw$w6`C#W9si{O2Vx=m$#leLq#wZf)b=edt;n)T>Z|a zrbf|QvI4(*CIZa*R7z6OD2j;$e=Fc)6?>-p+=;g*2l_YDy2E5_BpQ=-Yx8q z9K`1YE1N6h<*x7E$W9eh0h8PC zu18Iu?Apol6V8oGD)qr%?{Q8osA;{92*O|k_=VU-+Y(}h*9NRuYu8#+x7cr5H`+=0vWEjdb*t$=Dk0J&{{X&6_*4?wTFi4a z5x3O`_*Fb|YR*5`++wI(W_ebh@meL>7OifRu0ClZ`A<*oo+~%RI^K`s3+S(GjKFz* zTSTz}R1TdFIj>?GW}H6ltV14%Kf@R-lxyw zEk{jgVAV9I63CnK2t>f^j<;SHh79n3GoM>+YI2c4wwKhG6urSLm>J&AXENng;y zvGE^>r;V*zYsS8W?R#Yawg(%5BlGEsmr<9+`i`G9lUnKoO1pkyn}04U=At!0;!o{p zG*@(Je5Z|^5dQm={VGFyb=$&HeiGK#S~Qp7W|u?AZhRBtBH4>ioq_bn^fgty8RJDE zTTh%G!$19c_HVY`_wbCz=`a5PUaDM4eRZ)H!jg|JK_CUm`@O!DbN>KZ8mA<9?4Azs zVoWXP)9!bbE))XaDC%%MD>M5OP$P?J`2PT=Z~hha2ZL{yP`gQ%*X($P-~`>fAG{go z>t2m-BdiEB*j5!Q@;g}C9`ZgH{>IcgeV%Xo;lIL<>`h0s6aN6;4gMANKD*<+PfOM2 z)1b44MT-M_%2zo6^aycT2jWhz{{TJ~zxVyW_}y;>R!KDjDOQAZx$}qiCaK!mfBWIT z!kGFls)`uf%)EseMjW2QiuynP7Dln#PqhC4zwQ43#_Em#0FJdw_|iEv`&=W3{{UXy zzwMo9sn-5a#LeO%Z5iQEX&xbtRJaz?IZj6JYVEYWLs%0}F0*4Z31KjS5DS1tGx=9z z{{RV1$>FryfBXo4{x?bg00}eq(=Go1@FD*I_=>Jd+c+3~ZgF>oj!;A4*rW1JlXOFk zq!-SAT3@nwWmIj^Za5#_$NtS*^Z1A~ku&M=jim4{B=q)CRzKk);{#2D{{H~U{{Y0+ zjaB|n$iv#y@;L^u@Y6&gZ6bZE&OFcl%ANKP4fS0ne#4f}PsX}4;tbqv{?CDTCU7U0 zvHDb>+hB};XT$#hffD}!@igsI`9C1`m3lSzoT<}%HQz{>ek=a~#a2|-8eqDAv)fGs zTSv-A8TYRIYYG1VJ`oT5c$5DCh^))aRzI`=ETRnYl0cdN0EhkpE1MFh$?$`nMy%iB zaZ=iO65$vsmCkzQy%wGQk*G+YYiPu2oCQ2KKc#fi$zwO!$+m+ao(znm1Kd?@S=Qno zv)V1Z2P1(y9Gv#;UUH1Bx?Z6NbdE+VITB`v$b1}-8=+rQNd!)L1b*joWFEhTc8_mp zG{jVi3xoxUm5)Kl7^q-fI!Ggb?A1Rg>oaNb$p?Yy#~7~rLxb%87%?*kEh%6}&~eRGSnNmq!qfi$0Jr}D6I*bFO%7LE zb+=I_0;?D7JwlXUFPb5=x6UTK}e?u~KBupO$Vm;lpfD)=pMoxP1*)a8~* z+DIeLZGq@G0;pMF=#w@&T&MD_7RI#y0ECR2$b6kg%O^X2Y~rolU3pIh&9PEK0h7;B z$RO03tXs90iFnFm^r@lJ;<-hD?}P>2y_Y*7=eCD+vnjNfeGZW81xarrsvLW-sMi4d3*|Yuf%Ac+jK}_;OKXO=xrvomt(HfXSuPyyC!A-09O_YrV4{72iCnUS8Qs5x8ol-t$8e@UfSL%mI<~l(JL_k^y&w_ zbwN2lXKgJX!5os)Ue_pI_}j(zR_}eK=HA-PLLBWR?mTV>sleWqJF-bXl~}mbq8h#A0i<8ETC|Xz+^*F_ zj-5Vg?c}FzBEI80$eeh$$88Lb*FIQ|Rfy)Yq+J32h3}r!AQsiTk>0GCWZ0shqzIfw~L=MW0v>%r|WALn>5HXJPScyVl z##m)WMnLF$R=Ku{wc+*C!R4s-Ele8quW}vbR%u(@#kw4>g)0E_mGB4@^{g z#f&iN^2rn^gl*&#>MK)9f#9-4k;|UBKJ^a0{{SGVzJvLS?3F0{H>X1=)RU-{`kXDp z{Gkp50mvN){5YtheW9etAY*T>PGexcaXYx=`g>IzZB^UAVa<3}Jt(Brjd*Sm$n!|x zbMp7AR`aU6$?_`>owM5&oblWwMbS3IPBLn39a3#dIA7*Y>)6v&`HUq>E-pxonn#ax zV5z~$&tI)i6t1CJzyq!b>-41BO1u$_4embyQN|>Ur84q##V~ zNkHf8Uv1mSi3dJI-I&G&@(hFucbw+xJVV~SL((zh#DUoM98sRz{Xt6Rp4QAyGE zeEhH-Gw3VR?xwJgaV6PxXwwm*0HhPZ%8!>Ky$4V5*M{z4hWZ^E)j`9qX2(xmynYp< z{{RTKgXWorn`~K*PG@eWw8Yk@S*EnNp_9XNYMJF;7V@s<)Gnk)+y+^?C>wjI>C&rR zGWpt3;O&%tjb6VNhhip{D6F9gA};m&OJjkwagR!q{t;a>d`>j$e86`{{*d@n`BhTH z#+qyVyBU2(PD!J}FQbN6*LT7g`TO_xU9Hoot5z2JSxDAvMmUU*G7w_<^8?Z zm2(((GVJ-wt_k@9j+}JGa=t7Dwaa~@rk4QY=+*DP@Q-OqB~zu_U?23&5jF2^p#SHSUxAYv%bKF%w}AXs0hz6GK= z>Lim-sphv6!faKKH7T06Vn(omg=0)P;KZYvZo&AuymPVCAowz==+^>m4l7F)-9Fvo= z25ODv#+`p4lJiQ4GL55bY`lNKX{k(ZQSJF0o9Z@Eh!{$wsBD3rGx%0?y2<+|+3gdF z7?YLvuE38Dp$c@)yl~9F&lNCF4+abUmx6s<{{W3P*pr86_#BnJoQ&Re#IZDk92Y$P zn5}C&({S=c>E*OXX#j)Qr%ozeRy_}37WUplsbSME?PZZ}EZZXkVN>$tdsk$28#N_bbOdlg zG)Jq$2qGJ(*C#w0*= z*QNWbc8Bp5GHSBOLbbpn9T|uC){&zglKhNiiJI4w^EpPhyK)QZ@5lQ%{*_@?@pH3J zai4GgwRMK_HBIj#;CI|V#)B-|Rju~0Z+fpj^&+1meNLfKXfyUf(JjS zt!-i%1@0poRFAkg%Jl8UQPYf3G?x>^%u|T@1Cxwy{40e~wEgsa#X2vVGOHhSd9uIq zH}%D2Ti;$0_GN5>MiBHh>Y=pnFUxxrOpbRq{{RzSS7z%LqCmz0AaR=QtwJ$cBeyW2 zN{d{yoL8GJ!35tl)5r1y)3DF5txGZ^^MukO1i%H03sc&%`oNouFJ8&w$h!zDA1OQ_- z##`S_5D6P?UD^3~>5e{?&|Y5JYADw~XGoub0uzjWHRw{BYg6duo59d@V@KY7O>G%- zZ^0NOao)CqvaU#`cxO?uwbLVtYgK&8e|g^?mD>LRZs>%6spHdabw-?DQt0Pc>QGUq zf|QqZ{{Y||a0eg(OAu$}25@m*Jet;pl>*p44tipi9dAQKY+4RjkT&+F;T^7ZJm)iT zyf823(avV_3`=hwWL)h%$I}(d%c@U2k(t!W@O+<{7$1f!)6-tiLk;#=$2=(hm76ra z6Q1bYizZS=2u!FyP%8=G>CN2oD&jK=+SkH0=z0Cs#LIZsO%W3}%%pLSz+iF3MHIKz zR|OH88Dt+Y00MG&`d6YE{4{@ZmOS>!KEGPS)FjZFR+Zxrm`Ba>l3SjD{{V$g_IxdF zWO?}5)P^0_l?g`PhZ%KssY__GOdkQTtnLa#7@cwkRdwmg!`= zm(9ZM3UWOF_Trw#>fN3q%#t<&g4~tu$4YEg`fAH;Wjtj0fw}r)ZD}It$sv+SJlrC; z&aIw5gc{10UnyJORxWtB!Tc}oFzuqc^Ndlff!PnY9rKRWAs0-`8yrU;2OO`<*0v&T zDJPY8jz%M6xNt@(Y*R_|T>%?+?NY>!G1LQH{{T?YE3dq$=22H}52rz}o11vcTF8Pe z%BDVnzdvf0Sma2&_ID9XgXP>9hU_!%Rjk`fF@Ewv=HP+G6>;}*jw)vwc!|uishM#9 z04O_2>3|0Z6|EdHggSlaJ$z3*^o#q8vs+$I3>Fg*WH06+-M~;f5Ic`*g{*Z3K_Q<% zXD##Z$j&+U6&=ORsydiRX<7MYI}|A#^!B8j=}}CACPQlD_lSo%Vg5DT?7!j9J}z2W zeghwLla?27`Gz4Q9Ag+g2OVl-FuR%UW0^dMW&Pnlyd*DT+|+0LAl&X(kIC|T=Z=2p z&$TRH*l%*+`DHRT7AK}S$I_{Kue_H30J`?Mwp zz)i*`Tre3t3YydVD8dBs#BLfw3ZG8c3&lYI(pCuWGM;EwRtG1ar==yb+ivAMCiHze zA}Nf2XAwQ;nY~xajdQhqGskL@aM4czlI>Z{gcBJ7M;JNwrFPQRIH#0ATmiWdk@BDR zN2f}XNi;yn7t7l1hX7}f=})88bm|w{(S3R%ImBjR1KucA8_RNki?PQPOjpg2#dsDs zF^$tb=!8^ZX|Uabzq=8lWT+?C(-h0Jc;k&EyGb0)xRu-T z(F{}PFB%P%$Pwe zM+}Xg00WwRdVS>I-P!Hg3vUuF$zdvpkTRJ!^=-Tycl;?V#Or0}CEQ8@3yfpm13tAS zzxFtJkhEn?hhc8ZjtI>`0n$t+DV;pyyJ_SBf%5xQ?X|x1OSg4r)1d98EXa;j{o^Bq zZ<&`YaM>LPwOEl#UEBWvq?uT`$#B zVZ!6?`uc)>swJY*-3=h`C3O1q@-9hXEcYNK#wB9;BM6`c!5+TdD!Zba{58|Yf;8OH zj2!X6$NvCYx9#M!n?ERM3h~@!dXt`gDmb*Lr=D0Wmvr04*5ocd$>SczxT#`SGrvR7 z#bG%q#!%YU*=SwRd@|Q^okHejXi&6qu2}C=-#Hv}UV*1+;>Oi2$=&7TDH$Ag<0rLU zfg(tjIDl1900V#r;ZiZjO7bxnsnl&>LxDvhF^Y;nI@74GJ%N;^l^~4EAquKFCx9!0 zz1FSot>lm_k+8~;nB_-Y;P>Md*Xw}=gr-K=n+{Gh&luySdFv!n>J4JKvob7m5JHgb zzui3mu6ojo(C@*<5nR)a%UT>l@JTd|1VC+yDI1kup|L?5A$tg6^R`MEwuajv^)+7V z_8AA7(5IQO?(*@B4lr^0R)6-8x3Y~a-LmV3=jHlWHJf)|aiVs2Na-$bFE8}K#@S)= z9elMx^JhN2t1z&Y(%)yPj%fD;nVG%E)2mpO2LLcm9>pO|`l?(WN%8KBwg~OE%<<)@6ki z0LMVM^{)5f)QkTB3H7r^@-b@zxXOV@`EiaqfGf&U?(*6w?wBYeAshjm0gP9p{589h z=>IzT#kne+PWidR}{3d*G2ossx`*78!$^XWy!$|sh_~~tbIoFSdsz_o(4uw znHl3F>DsqsvDJLW@-If+#{(5zKKSqs2*?=xDi04v(dt@+uOiFl&A%(a>B#5PrA&Ew8jo+( z%Ui3j>c^koUBWa-tqJ|_+Q%5}zaL8W9cO8db#>edbpHT=*O1?{{{UlK#hyOcryuY- z_03hl4y?*D7w-@|V~We!R0Ih%H82kX~OLebl_m@__O~R>+u`cO=20aEUwe9u2#l#G6BAH`i%p*cDI#u&U zLze#lmywI+b5gaxrd)^0KVb5MWZo`!eLGiQs&Q=N)UWdu$H6F=>FpkN8^4!u!RcK_ zp|C@>Pu^tz0MM%A)XICK6Gs04khZXXpW#+DLm{(IE>(+S=jI)M*#uQh6ys6WTm1d% zwR0_`i?Gh1Mm}^ayQglItqb1E%*PRB8@08%c^uqvSi9TFCBsM$`oe_#zJuoH6j`uX zIlW{JyY~e*5~GX^dizzIF{Lz8$vBPh+CttbKm!??l%G!BszFalGDHXH;9*xFKBjVEBHpfSN7vXbSBgfS}kIRKYKDLX4K(B z0r(&*rBJUe4T*S))v`h7luFTDSfUyA`y0tK6expo%G$XC3kK^xh}GMAeQT@Y=_+J_ zQv~FpQ__MAdM&bwlvS8l631DCpBP4-2k zv5)Xl2GdU1C~py!FlEJ3ww{ynth?qI-|hW20$ZePynnIwFog!xaBW~(b6R&B zZ(pD(ab36o`}xot#A&~S+4>LGFQ`?06eiTO(>jS}`tk3-F+=4oF}K;Z*@^!qZ7L>) zMLq+*!4GWPj`93^xb-U{`AHp)T=0FvRPimOe5M3D9=rd`zayucRma-@bTLLK7y}D8 zU)LMY7-qd(1bnhbYx1L&%z3X7*M4I}sSGb>wGOlTkR+h>6nDLAO@4@j{%7nkl`=

YUzo19amei1d^Wdl}~dUYXOUp>~!{r{a4 zE0<%ti*`@HjA4|az@$L`oB%7)(^#yv(#MwY6uzz(U;fpmZvNfOkxZLq4;A+-uc*sl zr$4>+mc(+?2^{g_=s(bMczkOI_*bk=UG!B5mtbHG_;BDEkcbhvu8h-tv1N%r5%V_F zU9+DF_$t@iSHt(#Ll;y}-DiXgYjQNeED141pU1C|a4GHV4asnK;HPzdRP?q7y#hGO zto>9@8RQHS1Z<`!Dhe^uYu5uBa^!ZNC(B>cv?Hh5N356qM`%Cn6(#hrWFV{s%|Nnj7CMv1s=ZD7b>G>JDIrJSI2SXyB&ks68~U8aT7*J{S9wfx_< ziBgC_1OaF=K4SyQT?}T6=9huB=b;@EWme2k8sy4TqlcO{@;Bz$?SwrAVbxz}LJG>U zl34=GOEGivIoCoG(p3W6QYyKQ3!?VI0Nd>|3gOGW46@y?x>JmkJTGWh{jK))DaZ6{ z)2~Mybzo~v(yJ}hLN07gb*41p(%+IH#7meKJD!83DoYTb_x2{ph30|u9^u&Pr6r8k z;_-}M`<-eqhkEfu&bj)Y>Tf&nyBaYaf98&tD_>kN8RR^SQW1Hi$;!bC>PnpCw4dFo z|6F3%6bEoXyjYS@VAJxN+bT|#S&s%l2;I5M8<(S|6hA&KzS|r}e7~@dA&ITJ=Fm6e z`0Vki&k(UV=+OO$apzYs4RUzQWd5d;&wJhY#;-1}G9!c|T8G z{|kwC2r$~8RB=5&l;(Q>?+dYEifi(lA|XgZKoHx^s==VSg0uAs6$1aa@FnGmmUvpx zG)0Vi3Vs{o(`@YOMn!*#3pIQ-mzeNRu`PH51;>wTFUYE4Ar0C|0dM+=N6W<>|2%R3 zGLG$l45SGt2LGsd3v05wUT4D}C71+I4DoBBrVD?hOW8~RApYxkY>D!c)3V`gmYK1Y zkK^7TiYFHwAW`?3;$7p#ueUa~QqfeWDo+WoD3&W1DI%Y z^L{bhOP8S)K;F3e!`LiB{HiKOR)1V$7f;GAvaC?~s#sMKI{x07E^sMAR(9wX| zBc*Ba|92%W4!mtbfj~>0qm%Rm$v@kh<@Mem;z9Oi|4@X0$)6pX{0yuAV2&X|kY{*L z_CTIm4|=nZ144eif_=G7-}hEydf&#)$8-Oa4Iq3uE)_M{QlJYCP?MQHV2T}9^v>O38RH`l)&X5yuhHEfAf_b)-N}UZZV&n9 zIXe%}ln&W;3_6yzUqVTm(`4M~GOn5)3Zu{CN23p%ha-qWvB{uxUza-pkN2G)6xEUo zp`sO`r-FG85fC!}iEqjwj(pYEdbhg5)uDc7-&bmXQu9;C$-62AxM~)^N$f5q0Yy-3 zdMbFxr{)GZjw+r7Y`*jo?RlM zV=RwCZ^*t;j_zoFsX5RkVUw*W^NDoRBStM31u zV_Ef#OZR{IQc~UhvYe>G9p1jbCnhJa6e+xB&Eo3nFd4U}(DYIy7Dm_>$0jE+oOyYz zd}^T2=#rLq-C!weH=95Zd~%D_RCa_uXAAeFcU`U3H3AH5g1Dqje`3zp{*t3Iz>`Ms09JiIZq zMEs)dXAnBb@wp?HF^0ShTy3E7{e6^uB_e$jPR-{+DbC$Y7vb+`@36IcNA2ZGrV*5L z&J|+&hc>rXzV)ScW^3vrmV8K&l&uq!JpTPK-?^wSD6C(9u8_{*d;j#XB3Lv*F#ZMr zpxMY*7;e+|#4W;;GYLOkRZF*9(AqKjkuqsIko;^7mVE=Mk$^<&Fg)Q6by|qxSxk?6)|D2p>NR00Mltt-$sm&rt?vOcnddbD%z z;)~dijyYe6^&&rn`3~64eX_dwun1-!i>81kv(WSTKAE*_NjD)V^DbZ-vrHSwydqsd zoZ0F?xO8+zBC-R_32W&tvt5n<1M9-b zeyQPqq_Me=)59YTHTP|8c#GjE%dbSVAkNDNz@#U0}9a7aA#_hvr=TVn9|-S+n*QmP$cP--ilK+c8_tttTvl;c6Je1 za{m0`>>CiD)?L<_9n}&#>M;G~Yt{)YasSGp&Y|`;le??Y-ozqTTDaHis#^baAfrfP z?$Dnof$5encau;l>F+?V^Nqf`QwphtJhe~x-Ec>Rdw@_yTejL&$wN*Z-!pt+hN_U) zdqwdhZrDwZE8h1s0^DBRiR|C`=rAcM$c7I@T~fFzOB74wUO(6QybK8l)_!c=-K$Mw z*wb+0taQ@lNqfp315#6UT)zzBp z-OfTVq+$BeTJ${UIN)`fakVY|R@W8!Y@*_axW9+~-EVB;Rp+#=cUINZ-hX8f(BK@; z8B6ed%nGNtKkM0@+C5{OJc4@z?N$2Cd*1 z@jH(B(`MG^RnchgiAPNCkmrd2A8~4L6&OVDs{;X9@#yg)^m+pzf6@Y2p|%h9QKt1Y zmKo@K;Aoz{2Id@h_r0q7Qd?1pMJ*eS?ymQp_!I545CRn$#KtX&YZod99m#I?;?T`> zO&Op4=-c<(42GJL2Y@;LR_8y^112E#C+p|9ch&iE&A54*rsCqRNl|4XNu*RY3T| z%Sb)+_UfW&+dXD8CS*fESL#0yY5sqp1x9pAA|l-K?Ah1N&2r$x;KH(^xDbP&zN?9oYiNep*qNempu1Oi~^j!ky=IN1?A*Ii7|1( z?$Hx7w(%NG_OV%IsKf$zYV)l-%J7FP4*ZT2wnaRz8KX1v{)fvLt@|c({Fo+%xxDwp zyiT=JY;;eTZvh1qLxhef=P*+Jvn zx1vlmV@%2L)Z%Wtl{oIUW1~MQb?MPzcuRGI5fG{&`+!_N4i*mjyd5MR@WjKXB23|p zvpVR$GbPFL%-~2OZ3o=b(aP5-T<#^lTw^?;rGVX#F!bu8RkEp5Hx_LLA|HeRPv9ZQ2p>C6L( zVF8e4)pKzl?7J0U)dvGi;`CQQ!^m*|WwG~m%5Ds|BYxl5$pt9?nwX;MtM~O$&WLy( z-qcAH1;zQz#KW`SEDtQWFmBhOW!_!yhmxyvv>fdK-FWPTAoof2zCp4gHLT3itiegT z?w#Me+;c+Ya-R0tIC$QO@E-9$X6#s3>m z5Ti0?#mSr78wyj2HoY{~`+0YMH{ZID?_Ez*9jynU+GPpyoot+LskIEJ(gcLlEuW+M z-1wxS3e+5!GZ)1}r8l(_lyya+#!fol^2Pc2tI=@~9w>*gg?yefMKz}5Nw z6pqf;yTyZ*T8n|AGU(S!4e4%*_W+S&*h7S6lR(tz!k~)$-oiu?_{wm6hO>&P-M~C~ z@>8j1{658H?D?8LsLhZU#cXubeYwesXWi~r1+rc`dX9eiv zj-oCd{s}TR`qPXx=;n~UZ}XEQqkm(a3hsjd*2K-dFQSLL7B2;hXLr27w{+e)cl)mY zfpXK&+nSS)uaiK00t&YPalR5#^bNe-H6L=6Nq6_c-y8nmw;r;n$^A&txTK5-P87DC znfv*mgDx<|M2A#H9sDcs3E9q@lP}8LxO?iIv+aH#3sAOZ9=nj8)oWI0;uqS0@>Znl z(%5^llkRBHL|N2aMlfv88$JAsuo^tw}Leq>i z3I>hbnCzy>#UiE@OF?XS2}<8KmLs2`OWDd*6wq4SGo0y~oYg_rgOSH0kk{6-U3+BfKv ze`J5bTMzM)bp5)2;|K=_H`qXeAdQ(BaV;oJXXTZgR+aEz3FfxMFG@sof(Q<=S@LB1 zEn+4)WpKaMl`{`d5LV5o6Hk!oV1LZsxIO?g2<(Vj$)i)s=-oIckwF>F7#6zP0XZ%Absil=S-l1mYz+Qp)%m9)aV2mz=Tm<_U6^!IW229W z;7g3azAyYoS-~{IdL@!w)MNC=)!hy$oEGd(E9A_QAV1x}&DCD1EAm>3qhxtER6UoQ z!F(X7R#`BUxW7Oi7H2h;pMaoSTZtYEpeo=SWctL#Bec~jLW5bmEY@gz)3k|_-}X>^~5HUVz%}L)YM6<@KM81P4^H_vf7TiQeGf0)zz{US*MN_F$<-mXL;S=$z=r%{=a*CGPAH=ez&k-d9= z18456wV}%8=+5&F^v1%f*G%Id@~8Uvo!w7TL=be5Y~`G@zSC;7nN(g5`7-a!6FO>9 z#x*z2p`?wWcfCN_Kn(@I$R7~Wr@OadMQdt3PF#eT`E{V-Dj^c9SDv!W*|~hazd?xf z;nTfh3}i-S#V4s9s|Kaa(M0-DOo?bToLAnC`KJ{o{={v<$UmxuFjrj);_3c^h~4Bc?O8GflZdxLBo( z_#u_?cdx5C&xaxe={xHNz=>79XtMcqF@qqiHejc7X?l`cXKYcHQ0kn2o^X?kXtNv#}OPQhwD6roO=gG+^O-3&-8$tn0>~ zzMf@6Z?fCHAA5_Nq{glVt0#MdeyYnkP`pj0w|K!NC;TMfR7_`zI|gTu|36S5 zC!Pk9u6t!^0#I#|vwwKLYC%&pOBE^KgFyZ<*i=@BP|Pj%(3mTYfJU~ zK>=bw*KKt-7oh0#@I*bzAebp5!||1Osw)rHF)x56MHdUKzTj9<*zC__8`yU9`y;{r zt#z&nnl${}a;D^u4kbq%At}=9gt(sS);!TYcJYJcNq*QPM_l3ZJjbcPmAj$Pfl+N+ z`uLV}@oEe>c3jff_Gt+FZ1}mbwemL^iF%r5nqTo-EEHs;>&u5}Bpf3oZHSVX7(}tu za&a8h!MAXQVsEu81aF7lo`|Ho>^S8K_fj2-_H(i$f4;5*WIu83m%=nb9p1L$olg}4kfw8L|U_9jA zXr{k)T!pHj{x{Z%yruRDZ|X$DzR+i@OWjDM@ukl-uA9Z*RYY{)j1+qcNUn4;Cad>- z(oExK=(V;Koh6rmAgK8?ZzI}*l6!j4t^U%9xKRw9qWYg zp}Y71O+8QkF?_Q(#r4-q`QQ{Nb3}!-j&+lJTd^8IbXfk`MrZqVj7M_d<<(TH?wS|h zwNPn+d%vAvY#Dc{D;#yX%Awc~n*b`p*sJ9zyq!GUyMCUaD; zpQScZWJ-j^j~a`)#i$B1%tRlSYWW$#WX_}AV-bw^kJa3XKW*#L3vmjYw@NQbORyzs zup2+kbi0TzG$srtx?vzLFe=uH@-6SRjAUQ;84=Q9=A_N1C#sTFy;^ZuoEOngp1eMq z4bZyl%fIEkAujDvR32VQ$xrQG8)|yyvBQh?VFk`WYWN&nuMm!_uu9Uv!<&%Ou0fED4dE;XVk-^*JcDw)J#y5Vp|^R=65hA)9Yex!k#& zbY}h+3JC&ih9-8p2IOaE;_i>X%r-&PLZ4}#(3AzpcSR5F=*J{RvS3AFc1p1N&g!YD zT-|*4;jxq&#D+Qtz;_oTsFYP7dz8zS=t{LuY@Ipmbr=4?YQtgK!B6_RLm@*W33f+nu|F z5$4~!{*lXy_;{E!ZP*OWv{_|+LZXg}{9U83Kj@h9_H4R6<6-On8?izaV9hf8B+W-o zUglqsth;}!#+4TLiL#*ZfS7uA`NLO)-%K^R5v(e(y1+()N3Xe0~26gF59n^!ltn%xtNo8Y7cSJ8ejvkH4w-w*dg7di@LT zm>goRNz7YunTp_OySBQ{iFc@#=r3)KNM$w_acwTfbj>Yssj61#=;*6`rft*95ZJ-n z5FJ<@$Q-Ftua6Go9u;}V`z4w>No{vBTgB?)kUaqz`JoE$Au!pUmw>fE3Ee5NuhF<y#$*+K zvp+*SYp7Tf@|ot8BUc#z821(u2hoi-wZ9Vlx$3zw6cqn@r6CMnFd6C0ayB6 zG@E__woykBfL?^fcWZvU&iBO_rE49#@VX6xH@^P|p!hO|cC8`2Gz~s4_A7jfwE5f= zu5D|WKUMicvm&3iEEuI(Po%iUAQ5S2r6dNGS7F` zy8hcE5F-~xfbNZRcu?_Ynl>Dx7Br{nE4TG6!rq#$%gkX=hFNZr7E?+jpG+PxOuwt5 zJJxs;DQ3=OdHgBDb4p>W8MWN-?hWtim839^&5bQBIgaA9s!z5v%RGQ9Iw% zQ_25=|BgA!Kqf`gD85(V{B8i6A=y*S`3cdjq0T%%IMkZn$q)jI~GM<61*uxs9Zl#M0+3P=2zB2)tFU(Khd2D%xKDn$aMqN#1 z{KzoZ6reZ`wwTz`*L$7yxb*5AjzKADgG>^0Mj5YOr~Z(c>a$F7^qA35{+Kv4${3sd zFK_z zne*GR+N)5B7tDD94yoJ36rGcb!fSA+tAb@kq{W53BlYD1xog%m7SUN_=wWbnielm_ zQ?Bgl4Sm!aV!GIIQ9iXu0E-+`!pPTix$#|}G0n-SmDZEug?0 zvJmYna3mX$)Ay;0|C8R>nX=8Hye9MZB{Wz^EEGaudF!}&7*J_S8Ng{{!0XdklKd0BMamT+=G#s;bjxQYb|R%6jWwcrO$m-O1PdH zmAoRXUlr!H=h|$&=ng9}jWtu3L*ieYyupf|5xFwFP5St1zOH9M5bhP$^Q9f;La>e% zBx94)XzVf&*yj59EE8y%y61~!Ot1c~>tL{vMfPSD(tgz=*{U03nh_5+xFC4OJ0L7D zZzlFi`%=>}?sN=cMwO8SmGUT%;3<#ecumw`t)f@kdx(u@oTR(+R|7~21yw!b@QZ1o z`!-4A1l}3u_WV0XpXoQUiMZs?Q}Fp?(J9E*IaGl%^Af_U8^m*2)tW=hWBBp5X;*8o z8Qej@4E92wP#(zoI8!T!?ZPKRa4zrkCw*ddKf=P^O-DNW18pwARQsLE z231wLGRrI9x_?5OS?P}NaQUa?oC0L-h0>^5#$X!=Hcl^f zr;Hl$==JN_afeU;%n_@XG}LVK5G*MweQNE&HrF%u@=0>sPg>!^5~kl4)c+)~@Hh{` z>L6Yo6q%w|6&p?efokt&hx`e4$02t*t(r|GO3Hb2vMd>|2cH1uzY8@@4> zu;{P9O>!f|JkqcB<`+cu2bjCDGrW%~r(vy_ls!^X!m#iMveC%qWUlE2wz1KOkCe)JyOJBPnU#EGH$$L(hY^c@Ejk?x0 zFUwl4n+eQ1(h625{FQD|?Qub(IuT-_Z|j$MHn>M6 z9OZYY(o6DsgZZb7RC|~$R_yhx4y)||5nw`Ezc&E>ruQy)YPv9;u_!xJ8|(n1b~OxL zdshgjLjBo9oZywrq*;hC8u;R5WW?x6aNH)5OB^X(`CT<&p14ofIRXK%9KTdHJ`~WD zkz%u6WZ-wAa}efnQI>#Nug!v;GB1yG_iY3(553mFx`Gj<}0mX&K7nIB4*CcyfIVRV*#fill`GR5qYNt zRY;w;kLYvyd_KNWJX6HpIiB;ovEvBh^-hhZx2~PIZ^e3Ci0o)3E>}BA#_RlBfOe z?bfr0l;? z?XwGldDh=gxC-DIFh(Ny7E%TRPBS+YaP&s*s0ct8Q$8}Y7A^wjND$j}Pq^O#xXsZn zrQ5aR&zpZVhdD`gGSoyS@IAr*K$-g#$JkJ1KACsb)I#oWZ|!!%!cru#Rqb0G{{vy+ z%75&VmU=O<%taTdFzy-8le4vXrs#~dD4PO>aqPL8i=a)|8NU~{XX_Wouq!?1uX?6% zD2$SYw)orpW{T$6hbDJ|pZcCV&NG;9Qk{MN|D;*uy7DowhHCo$8yWSiIz(_FG*it4=o% zB90CAYW<`8a^tkcjxcxTDFk!5N-gAqKVI#e^Ldb*Sg6%G(WoE&YI10R*4xNUwYLok zWKYFN+Dd6U%E%k#d6%KX@oOBmB111urlH?y{welNKMmY`(M^npfKjW%l>ZUdJ&F-F zMO*C|r+p9h;EResz0=k`bs#ouwsK`u?aD4+0ivlLx9gQ+XU8~S}Oy!Y>JGC=Okp#p8ol+k-RtUbPTRloQ!P@ z5J2xtTFqJ77GquT*OJiXH^66@o8(M$^tpH^@5r|{+M}?VErq|PaHLw_(0RTxVTZ@j zq{DwfETR?1tAl{u%U;Ir_Y4T0|5K+jX4j&+unIl<_bPvFbfBTeDU63><&t!N=Tj9Cj_h19xD zxlhhsWlC6O0HklS-*gYrO(W>(_=gzBZHotr5R-`#Gb(f&wOVw$S@n`%#ldT(-o`uRw=cW4WWmao~I8N$uX!{KNdLmXj1aTI>J8Pvn!s|S>7 zzrjb_W=Q>4j9IQyL)eePZa4@$#}Iws%6Iuk@sURkod=m$P2!zf;cJKQATDZq97>!@ zgTl17PF~auGtCHff(K7NpGfP z@WVfd2$x9Lh=9|SviYW(c2|&JRN-nh?arRL)9=hXCYI@VOBqYd3DFXUXu2ff_3NQ{ z-mq?umTuI4pu?(1F z)rq1EYQy0ZINfkjoT66BCp2ZHUpwE-O5>T!AY*DK1uShjHJT2ST$buEe=Zs(fu zd?9+tqO8*S_634x9I5#HF%RNwIw?q>5NWLrV)SCJZ?D~mwuqB`QX2{hcw{@MZ@ZPD zyoNjU>K>2({He1&;G*MZwMo!YygM7E3iRUy$B&zA$4PzV?QW};idp)mec^Kc{M}H- zpJJi?x~mlX6#e?EZj2hUR;Ps?+RzbaobltTX%R$pun$H|7vG&%$@QBz_?Ex-_(~V$ zP3^eeuQn+B&h*chih)>GU6q>U zn>46|u($@P?n2c*#G`uhN!vqAWQc*Lwx3P0Bd$V__I*+(VzhrF0Ke)uy{mok8hr{4=-x1$x3k%YnFK)K(rCp8ppzn zmjXD?86x8Nc0A-E@|<9%+yTaB2@20KmG={D7tA`8n}iO!(JU#3Z}l@Vio*$^Djw$1 z$ZhRgZ42LvFUnFQsfU8BT*rYee@MT*)+C{>mNMjc(ePP6>lQvZ(z8$dj|`Sb3by-f z^)}N9*-Yn-R7L3SI+N|vwJ#s-KFYCUV6Rt7F)k$h%BpSj5IR?&sW%ApDPr|G7JC}L zYOVQql?UF)frW6zT+fK%@^Wx6Y2sy}~#Q=rfG8Y9FqCW}!FjIA8mf=|%A{USV7l)&G3Ig<7Ij~5Z`SVd{p zmPh}0nh7a`*VvKH|HK@B{P-PM&A5f_l68OmNGg8Tq6&1E2cGhS~d*1K7><5=^gefbIemi@kd+Q-gJ2xUAX7~L^G^7(Q zvi(AO{6e$FNZ*v7x`JM(bKcQo}sSg+Z2d9I& z8)h&E#*Vp7v!3q`AwWJ?<>au`17apZ7cz{p5K5YOsC7`~Is&D}(a)n&%VzwHMlw{7 zugyh1%e20n%aQ3oszl#dwoZdS!y|Mfs<_c+36|znn?UiG_SfKbrAX0vQ=0-#!oy*k zqN@LZMA_G(^?}FYnam-aKZN%SN+G-~GT@l{L#LfJU%8_&44#O( ztQuCaGD>hxy7QqCjX$l@JyH#}4R;Lf%_@5g{!KQY#~9~@s3&YPrA>yAuL+|htyO;MsRnP+2u@3i>kgTKD$Gy{3vH^NQjqB(i6 z#|YFOFCCkpRPVP3p|p-gK^9!4MJqRs#~z2Tw1&g9UY$n{B65!mXoco3%TZGpQV<8fR|mkJStT@4JPw(L!dRJo7bwPWA?q*nRq?^GP!IlJ9bCF9@kj`KdX!yGnR-ZS#hv+k+Q* z$YC#BNxJ~ci`HAI<7)?(^*fu7`1(>a6(`odbruo6zN*TXP@3K9+yK!@p#@UBt+q2( zKG(OxW_GZ{S7YLfgiCYl&KP+rh?bCBI@0kSllTx_{++ar;w`jXV(WE?%)|qDTY{lC z;jv3I1NVIzPV>{G!0vzmyu+yeYOE5fePFw3a(;ZqF_t^aeHlwTZ)74m{TQ*^ZPQGN znX~m!KGw*|VcgZ0e!AR`lQNpYVA1HgBoFmfBSbNc=G&;|e|6ePT)6qscPE!uy=JoH zpZpP(!kdQ-JBl89z1Arb9&*2(ELYPuv&l>q9{K4N-ZQX<;Zo;`2Vl+#P;n2nVrDhP z?~;l~k3YX~*l6sSc)W+Am%gC=fEBsX3h)O%fzMC>-*?|Pw*w4bpa=^rzR^w13F)3# zJ+>)obV$M$ycRLdY5i9YK22N+nWzMAQ67Q}xmX46zyZ8($S+|4S)`Nvfo(bHKM+RH zc)!_=0t&ppypO&q1W534Gw2`}!UvGf=sMx8Q^?8x7z!o}IsLp0Gj{niCpYwlbR#!0 zuZ!eD>bcG?F>*6Bo#<6W51hSSLQf@sUIi)7(H)M0Kk#boYaQ1T-jHZZ0%YOv_v%ru zeMu57+n*w4{z{sPYIiMP<2{$m@c>xQ*an{HT69Arp?s?VL=gD_PN zRjt=XCym`Eo2g8g^edtKaKvRrsAcV(<|cQx%~LvV+Aq0?cqQjQz8&cU0?uu9&HFI- z8M@&Vs}z9%o1g!IFsa=@-Ip{RBTA}ezBHnNbubwzZ+@mBI-5-TKSLS=V%`;wYs!z$ zjQlxw<$Rr6OhwO36fnuYR3z^MLx%;xI3B6kX)@l-x@IRyNGeatM%mDOt4%;M4Fw)m z9rx{JGw>|g(JGYhAOCJQf_GW}=PHK-ye3BR_j|1YMq4F*x`!yD1lN_wt9~mNfx7;# zEz&lpoRsE=2wM)MC*D~USM&lP}A=U(@;yqUdjhk{+Z?4OHOIDS! zukjv&Q{oF1*6pPC1aKb3?qAQhcTc~sJ%8x5_=BJW10FT4NVth2gnvFzhB>3k4t7^r zSq|+ZGFtgRlFl+Ls`hL9C<=-QA}ujUcS+X>2t#+bba&SX3P^XS!q6c(G)N5%(%m)E zDK&Gy`~SS(HXO|6*t4%#*IMWKTlsAJ#=q}YNN0m8RseLx6xaP;*P!m`*=;xokFkm~ z-MyY~>}d@{Y9eC%#c5praA#aoSEHextShcve9Be#O%0fkBuUXZ-(8fsv1Kh8eEH$g3j_Bpw|QVJ8UB^vg}+D#bqFLoWT+7yh{!ZA-XZCEZNd{_U;q~ z1$>qDv&;E+cz^S6Z~;->dxSnUlb7~99lhncOvu%`4rh(oyOW=R{k_NsY;o1J9H6lv zamn?LH2)EJd%L&m1}_iZke{}$OJn1b`~`fN>#=0_8XN(XL_RK76iz{B?YnLe|6#~z zfg}DW<3+bo`)nCSkLl8Z4)*UjjL!bri*S7_$YqcrMeN4ZjK#@H-s8ZwK3=TZ|9--5 zHh}%d;ioRJJZ%y-*3Vd6zHR^o2`@nLQqwpq)9L8|d&wo50+KSsN5VUD$!(|m&k4xI z5XXv%dheV_xIXXj*P8#*CP{u^S~Hb5NWJR)#?6yW50Y|Jl;UXdtB<`9?Vot39V_%P z@YkqTs1G$B=`vrZyeF@d*l0KP>~mPrKioq+tVz|~PmPUHWi})=7Tn?HuI?XtS3lx~NoV_*r(Qjs%YKLi{637^CGzFle} z?Q^f~;~O{m)tqI+r{=lAeo;9SlclIeBhT`w)$eiN0gS7y%*_-2XH`CMkwk&t1BTeU z13V#z1_IR7;XPj2<2&9AZpLa6?O6+{COiem2@h=D7hc&woU{VIfBv~aA+2_#nS>(- zZ+6a9zt^jBBu(f-F|hLoG}U9>@|%9Y2z+#+p$2B99x!@PsP5kHPXan7Sbh?=R4w6% z`xSXrR%OYkU(Lj-^C1*xzXrzm13UHYFLNKEdrc=Ni<~vlTH_2lqK>$nN_F*A(Rz(x z!FJs+Jz;D&@1w$Brv^Ir@i*EjJri%~L=s|AyC?@tmFAYfUkN`JREM$HIL%M(;q31H z-}%#jbv}@@z8;^jn4z8Fk9?!hgd>d`BUDz{HcOxQQ$WuWBZ1OWTvS(d6NGRv6w zzdS)C4*vSU-Vp>G7C;@c&7rFuwRZfIpy#4eZ`=?2nN8GLkfCb$P|w{zT<@>p+totV z(cR2>UiBccqb`;FzX&CpwU)yvjo8I$1p_9+10>gV^UAkIh?=ixn>O3AVgDP$$f~21 z&G21JpOL%S!^te@693Ene0xMPrSFCfx%#0#OWBYY?E7|}*V^)whAgV%^CCRLOHr-8=FC`CO|LcvVL-s@{|RZt2e(g|PiS z%#ux`;?z=mZt>OYNW!F*p+zBVSM{&UQ7s;J4Bz7w8d^W^CDL39za<8mM8^SI1`mbl z-I+!^Tz8HR(8^rVW?jZi189$9ME(&jCQml2{eGk=>}ETuJM z=U&?PbeH?NAL{GhtpG!2FBb1H61pT_9d6RNjM8?=&ovwsK^5A5=GZ6Xn(2@i?tge^*5(hKjO>XxYBunyU}kNYq) z^yjcWWXn^4)-k~m{2yfa|BMYShs zcBxrW#sXowZ$w>F`dU`FT3w;Ehgssw+|_(ntD)_1PSA#^hmq-HuNCMRYA_yP2y`9u zYMB9(>g1n774jC{g1l89#M2*H8(K(77RdL%NTf2<0)11zaEVbmA@9!(Ya*e>xSbOt z*YBq#?xFLtWk8b7uV~Wq2X#!omXa-#^f>W8V(5-kSripVvD>nw$ z?HQnQxYMZmE7rI;N$2hRC+RNa)ZwkUOlV2hcn_o5E69V&ZfaFaa5A+ob!ZNn$nVz6 zei}Nr)oniGMV$HaBH`(3D|Kk&3BR!fTR6Ob$nvnU9%WA@!KgjNO<4+Vsnl=3y>^H+ zPa_)M-Z$&`h*Z=oddO9nN^PUFv|kE_4Eaq^K_6J_pO3*tVec=0L$pLED0BR?_D|?@ zSR<{!T(o0PsP;5eN*Gq;-`@e+i*Kt4X0}(w(7^z;&x?k4QA=-!P=N1{F&)@-$D~oy zkNt{40Sx7cT^j4e9t;(1q_QZjkqet2*Wmo+-qG=0mT7}3>gI9GLpKX{oFb)98?&<= z4&Kx)Xl~CV%6?PomY4?Kga|a@TPL;D?2Q2T{$x*%&I%t?UE^S;|!Di(ZmrZ3v(0 z>kxBIyiNM^^B8TN;e53p*SVt0ApAyDq~bYliA!(?TXk#d@%ANo!exvF@!((H$bZKl zTWHLv8xh}QG%xv!mi&oU>pgdgSe*x@XS7}0cU~`uV|O?hE*4MGL%A>r+wQe}X|=ug z!9u`p+3mnQ<>FyAGw>Y^v@Q`w8pC1&t}+?y6fj(|?YD;dx1sG0O|{MS5xpKS=RMR>cs8u^2+-QooP*X>@z)q3038j0tl1Q|ZFk3Xi)8aFDy>xpRI{aH5*Y`(Ug}OiUHe_4lIl-kjj6ZnfDn+p7QEH3*YdrIvT6yQ;47*{nC zs4Noe#IPcgihwx*ICSa0**fOd%`g6AwGZ2krqJ+wxGhSOA{>4wp_&lGxw+2MiY58-V)Le+=KfJvW{$ZCiZeHkt&#w(J z!<$|(uW9T!zX0Upo|{zkYxCsl@tYXuCgCPp7sI`v6K zAy%(6*O&QG?L%gBX?q7)Z~YDsaRHm*4u$&P+N*O3Ev9%v?r~gO^|5qSASRh||G21c z`~B8+BN}eX3`|P2JH}1&A~FnaZFJ#{wu?@?f#(l9m}CeGwfxui;nPQ3Wbgzc_!4PI z&egb3jiw+s3Q9WCE@_i9sdU7zm3^M%zr$WU!DWwz7u9+!gZw)% z?B`x}|AOB?LucEwa5*l0eEsd?y`LBwlZf5PYmyo#w#p+Uy4N6uR+Iis?oR5{EwSw; zzjB~0PppHR!7IJ(ZOIb*CI7}{WElw69Yt7=$ zz5wfTOYH5#Gvzo5xjLao=KEcfTGKC`6{?EzIXsis4(?3xLz$V{-b1{W7L$8FL`bSq zmS}X?4OG{eqyi{++)Tc4&Pk*ZFwKF`jjzkXo*PW9x&i5kc)-k{c<80`hjgaQ3mUR_ z?(3r_4}1Bp$*2y#L`a69+$;Rrvs9@wK!>X|Tm|<;&g_#tsWnM)8Khk5!A7|Wp|!&A zdA(6d>vX6XsDcBz?w#U&l?18_bKLT5?$^!vH@zj71R+A%FHe@Av>>YJJKxSR=rw&R z)&3{oOjt7SE#uFUBKX)Mc?+1J!$|EoH?jGj~)X;}5@T(Mwu8Bus6LIVi5Vp=O1Ocw0 zBfB8?8Z$kSpm8kxSBC^`L-Yg+V~har-ZvfjsC9ZP>-7h#yEbNf_d}oDUH!Zd@iM9j z5j;UV@AI=1th!kyc0d|mzx)*moaVp4u9w>ARLeD2bMPN&4R*XQKK<(RVb=Z+Lr!yD z>@upollmNI@s(xNb1}+>Kle9#Z4BI9v~zUva=vJ-KR(tJ)*~|FJSo^0{Y)`cPU$PJ z@D*{><%Dk%8f1((dxy`D)m}ww+If5cHGGQBd5(z(Vf%}{8HM!1dhq%Y zK5AIk&#b!`*Np7mj=DH(X>ZH?OpvXm!HXrI%yecNok4}YY4Vl%@?$K8-Gut`Tzkav4L;utFj@EZ(@cpP)DJe6?}E7( z#crtxm<^KT-1zV0ve6EWMORDrKK!bB;rFsJUYs%KJ*o2o(tY5-+)r}I5+$@%=Uh|L zkqAppLI_cbV?FoEDM>zEWgJIt&oh9wM=?@XhtgSgW9JHUa@I-mc^kX@rC*nTNaFEzb+TTB zX0i^+Qe|!AN_h6rz*<0VJ{N{|fZWmBMVKn{5M{|o;)HSgHl=HTj*7RB`QmEM_#GhCI8hXGZP-g_n1rh^|0W^~MM|3ZBb_M6pw@o&~m zk5l|Ee^whNepzQd`?xLU%43wH$eyXi@SRHXfakGdjxX24y2R1z4mO;DVY`UKXWxvo za3yxWl%w77YUR)L6+VHje_AF<4L!$;7URVJ@t4BlVLJKULt9l)y>`Ly8AD|{GsdIs zeD$a+Q-V~H@RVN4l>y%?rl^X|6;yp6WDWw#bASmBd1`s4#^-eQ+fMHJm~WJUxG?GH z5*+@LopMxNlW%3o$a*#|y&Uj8Hsu`lHSz(1uY=b6u*X8qLfqjO4no-A>+yyx)A_-c zqfD3^?T~kQ1h~yPb?8V-ry&txFp8@xdGc|nDF6vw0r@p^w%6YBq-bb1rp)%i66xoqR|trr}2ICv0wmCG>EO0P39m}W3J!N$SDTe#HL1MJMUlx3Rpx~hq)Su=H|RBeDYETMOK-_9&DW1?CdaQH zD^S;T2W^Mad`G5#UVsfd$LA}Je2I7o@+;w2=o6Tdovc|_C1MgLC#&o zM(FC1_0fslB~DE1yWqYFaBCm8<(#)$PjS*7W>Ht=^+X& z?~V$E7hZQT@*`vi4f+98B}4usHkEzu=KYB1?-^ZUR!)mSo+ON>B+gUzDs$! zo)Y`AjT%QCN#VVYce)O1Jl+R}X$K0~VvVM5b7fOgI)9=R2Bjzyq%7#JVC0xt1`1|2 z#@(3NFnU39gqvQvu7o#%?9+L9J{Tmeq8YBLuy?X8w_)&_gSUmEeXZWZK9dD)%|R-`H7|VZi0rYYykhq z;k{0OS46{uH3ukj@b_IaV&l0gpOTF}!;g_@#bzC$<6u`_KZL1^LVMOHjo_O-@eA$= zD(q?EMvoFc?sEP8QYwGU^|Pu}wTec6ojCg?N=^+S@&;dZGR9q2Ug0b1>oMJ`)upOF zOM;{)1455%6D|#f&YhO}-G4jeV6Bq}g}OzVv6{;phKPsa_`Kn|kt2Mx`qia`PSaT9ZCGS>CYR zHp$Lv%~b>^swj#yWfOcq!{3ga#oyFw(FvvfS#$wIBOfayki+>*&!|zQPPBy-ZG?B< z{XxTZ?}IovZDN!@-hF?MK@TTGPHG{Ek}k) z&n(>l-U?&eO9|6c5l)4I&5+}Mdhj9#-wz_2QC7L(&@Rc4TdmJW)KW;tQ3FnkZVHtX ziAe@;v`|WkmzjVCDYrm>;S*of00Hrgi$0m@`tXFY!Tw`xB}P;H^(L zeU%XVo{v^ScdeKC!Kntr%EB}j^n~1;{+lEw0a3w?Zj+5xY}`cm;>s#7f> zJB5<$wtX#ZX91^G8+^iN^xm*2#u8EIx&h}tZNj4OUeH6~1NI7b>J>g$g%`d9Zeat$ zl1d)oB$Dxe?09H!7wa1T=~&${)~)h#_4s5z}ZH` z3-4cpgW{Of`C-~QNW4FliArDS+~VYq`xV<%4SURW>CACobl-1yZ`EX*gxgD;&`QsId};NI@EP9Idwhk`$dZ>fiL^;FZ=VuRreP92 z*f#v2{ui$AK^IscsALup*vN9w^w)L{pu?#S*1n$0r%KQ#mKqAT#PEOv0JT#2KlF`n z!^kK!F{n#`rNy>*dTV-=ixPH|pYI|)A-$BhuR!v*wx3R7XSFTtRlI#VgLC$4$ue-X zdtX%%{a|wWXR>30(2Akc7s7N=vgUH##)TBVWaaL<-f$@kD$@RX_M$BEKE-$62*MEN(mqW2!$~ZBUcB9d zku7z+nA~LB*!fcxCsTXYEpi58)dH+v!&iY0Ikhhv70XO0{6PCdpFv7^y^RD(tqU5_ zyU;fynnnDz&2bo(N=g1^K(|in&|Eu-B#v*I%mhOqQMK3OA0}rNJ&K>D`Go2|&k4Z2 zdMvB`55oo))z9Bv{afN}aKK|?Q-Qb6(9!6J_w?RMW1E8Q*B5gTU0s`QOft$hqBx%W z3X07pA2ZgZ9VHt=A%Sk%ISUj*+g9GPw&72oBPbucJ+kD(vO3y1o`sNT1Rp-_1yxBn z2^hcJopqVN;269Q^f^BY=b`8egwcRSD-tRF43SzS&}@{dd|7KHlIH;)hgnYRH`WW)PSY=@HqHu#4hMvYpGxFX z6-@!K3SSusYrGeSUzcFb#_V-J`&b1--gBvM)$kdqbq*XTt14Z8`R#*E%KL6z_L zx4-t}qZ>UXaDwP>^L}r~YHX}yJ&|W6XvGks)TKc{9@JK9c8_HWSSdPLv#ax)w3 zV~Tp`paPIMWI4p*@Akpy5iRyD-dl~a2nsU7TLp)$!bfI6He38Z*(|l-*6n8c7UM|% zwPh&ube(wlfF9Z-y4l?UZioY)MpRSum($;dV?y>qhc5gdb97w_0IXA>@Bnzr(ib>Z zcKGu{L-5mgMn6A7P~PGOs(0AR=Sv=O`!i-Ypf(F@jjU)wFu@==uvaf{=Rew9cKLNOJSegG} zm?T0)F2&s)nBrBUmX6nC9yZ{^Io?+_=J`G2Dz)(I9}c~0eg-$81Ct-${X^M!?*nF+ zr9;pm419GdcuCxU>t_+&_wH%cvJre~rY<=l_l&K64m<~#piDnNMV7#z>m4i2ANvUa zpHAuu;1j6>=%c9Cq=95+?^o9}+CtFn`+w-x_#KulvZ9ue^85rZ%(o2zP8qHV!b zDxsrKrN4#fGBd^C1G~@yBSYpG>6j~l4(YT&i5kQ_jP^k?5 zcqFCf5*ssE3w~V1BhBoqps%K zzqD))_+*KlRpH&5QO2hvNKE*Xc#!AUNB#iCrYR8nlQ>IkCT4;lAyAlRT~eR5HQYz( zL*NL|;jUp>)OJUIPi|uI_wp~yG|aVRdFCZ%ILX}|i~;`0Bi!D|^8rEk+p}A6xFYW5 zLoRhjM>DTP1UE7$w9=AZOzB#4jPPUy|r>*_vG%i)V&lQ{&m`S^!H`Ms? ziNx0~Dpo&X^X1y?-JBHjtcNy|>Tjgdj;gzNPBC%lfnV8OH zl%^Oz$K}+bzi!9+ZuXHkHNWJD&CHj(jrL=3E?DIS{C$=971VtU82*vaMa~gAJ$tJ4 z#pzB6GPncpaI#xcuIgxwh&8TFQWbAge;ummL^9;V{M%X+?n?DbsI0oW7#`XF{pAah zB%ZlALq2z{@|_mDuE~i|QATN(G^=P&i1(lFeJWNSRGd<>%!n97So`h;r6XBUSi`|y z{#X;hVS2XXynL_4eDB_^*x!uGvGU%2omcL#UX1Fm?b*6pLy5jwGeln64R!|9euwN< z|3;KP^Uz#l%;p$t9LnE|rIIC9qvRUK!xBQ-)j_Q(v|q$gHKkdR8MzIx!oSDm-pGy8 zvxfk4{0+=Mh($4tCnd}HHFDTJhoyL~=BLmy^Jdxwb9Eh^^^>Lzx5o+C&3*5c zd;i(&K31NN;|rOW(E23OPqORH$BySw1+l zZ?gfrfAyBJ;HOp#(o8-REv28_AHuOpJ9CRW;%+}DKfx5s*m<+EEnZ<~wr^eYBUWrU zc4p;WfTNqX8Q00zig@LMjW}_(g3hU{4B~f-`!qRkyPt%txU#NfVa27Ze}rqa4lXN( z8R75hp;YV-rOUPt2{k7ZE%UeI`lN-smA6cA`uI6WEgH20+7>x*NKz-2gtF__jDG0cXnlgUs z;k4iP_lWK-*?g&n+r3Zu#nJ*ozElr-xoFO2O9A%NmBTqx_!|k&@@KSSY-z?w52Jxl1wBRI_2HxNP# zVj6wXOe2h)@60xvqoFH%D`xpKN7&PL^88s`S{Vp4!260g;%DEq{`aS$^ck4QuQBI3 z?GTo?KTjSK(~yV8_}|2+TqGr$%AedDrfgR7`sLl#N4|YmsjFXA78wAuN&(-%ot?8`SV!}6DxKBG5>zp zd-&PRQqP*v-Jcfi=i#F-1w01)wO-qx@}W+4#H#}gF`|SG7d*#?e~N#w_2=ldYgVaD z#U{;EE(PtzUeRhXKLndT?6o-f(IyGMJKlAq9BhB{@c=Axcug^rZ(z&NV)x82G)-(L zICXz?w5jd`Xtf~9^}!mapiGNZd9)yR&daTEHne!2LfUFTmMQu6a;S2d&Gz(! zgMH!7Pl#OwA0~sPtaV^!8|F_XLLNzUN5JUi9=KoB}7?#UqvUvg+&^+(HTID zvv#|W{x2^wS_;aCfweuso0Xg9->*Zfk1&+1D$;bN|ha? z07BT}QTH#%%Afj)^E$^r(8Vb9fPd5klr+7BkIJklf^WJ+paAgHqC+O&T+y``rva|B zIz+N*dIMGO4}74w&>b7-{UuP=wkkaq>iCLoEx9E64(yAAS$icCy$(xf9=+nMEATyXNhB5hUN=#}_gani);XY(I6 ztwCpXjg$D)09cvF#DxpcR2{F+J_WR(quy~JHVnTVnE>HkqOx>AK`(XTkB)E5CYp?! z>`6{SMwfBEH)Rc~cLa<#Nvc2??YsjBnq?fQ)@?2&sR z*h6z(aW*}lv5#Q-tr8gKMf;U#s_+Fj1tsA$fA4XT=K~+0A_X- zaBQ~EL_^(Co@_@=@3oBjK`p-F20Sv(Jw$GbP^LCsr9LyWZmPwMo4myg+sFoHf;x2W zJMg9yAUX?r?E|&tFY-pW$C;L!>IAm)Q8|J4-UDK=CVT}?r_aIYAOE{%XG50x+`W~@ zjeH*~zf|f+<5_MXJH&U3JBXW&wFPbW6Au#6i3YKm^xW5VG(5!T5X#QNKQO`wutDCO z;9NOAW5bSnK(zbARPt{tNp7WVg@A=6m_@o?_};rlVvbKSm)7J1`|IJ>OMtzCH2l*) z5PWyE=2O;0LlLMugTbU_oe13rLK7_QZ}RyZ5X~6#wn<5(5o{3v&3*?o zuD<}PXGQg?vXXY=pP)Xl^$c`>2fAL1=KtbFWo9yB{f=&Tur^e)8Zy@gl+_-?i$PcC zAoN!Qfvfr#1{0s`?y`P1#}>n%#cTtDqj%8E@(AYS z+SvN~P;rUISQpM?S*rcqZ*J3#t_(x`B%D5DO%V{In?`ge0^NyyQ5{iG9RLhZQ=rUe zig~B&*dzcue|M#!u0>N-4c>eU46^{xaIJ&aM+w3*fVtS*iCkDiJ%aoW!3x;VSoe3H>yBJSgR7kFbS{l-t7)Zv8|&9D;O@0#D|&Pm z>2maac)@SS-9mu{KFx{@XZRf3Uq5^vC%nDX8W2RXX1I8*7%|qsNig5W`Dge+N21Kh z{-SC%`nkN&CyUDfOWl0dUmkV9*puBJ?Rb8+8u~Zg)UKl$a}dOI1)z>gs>rJu0qbae zri8}VS8ZLJ2KNRWRb|{;qOjNBs0MhF<9M{jP_4Gbd`}^M7|ArRV|bUCXS0!DLW7g#~Tf_=8F2~sFZE!BewskHZI^HKto3$GlL|7#3cAc;L^Ag zw&}2JOe-9CyXXiv`$nHIc8WAw|F#nURBPbMDgR8h}#hkV$8{c1_2vQ28a zJ`@Of)lK!6Esnfz0l7SI(kzIIf%Fo>@nN?}c>BZJ`%n2cSg^fF2xf z7tkxUN+Ilfn+R2u6kxTVbnuWzR-iurhw(=W z#wLA#qSVQN@)SEX$v;Y8N*N(b_>RCXVa0;tR7n)mo;9Wx$#-O6a$}qvB7}<0HOLuf zLV*T+5HXvQr&V_F`N++TECGT(LR)K^ooZi%vuz(FO+D*EsC>7nsE7UgRy>c#;OCeq-bKqypngN`NCkAuEAgJB^>}xotTAjNxB*8RtX_kBd@D?&Disuph(l3MzjL zx6NmV`PjhK0Krk@gYQq&b+!%j{9W4Rxl~w!X%=tIDwv-Ei&;RY!&I1Hozn`7ZX;^6aa`VVQv& zkBzxjPfyJ1!1s4 zm+C-hNr7^Izlf~$7Y1kuFBY5gN<7SCKtRM&(}hAu?FV#%m@p=@ip@B%>pedUrfdeQ z?B+kccWHgNrZI0-ctVbqW{I^mG4Nz0`sCJ~wS)%A5sgka$0$c{HdX_u!H-tgB|unH zY&tXNn1AtF_1~dJ?+kR}-B>bOG8&DNHaQ(^4m5Q`O1yT;B6+lNj770w8NaW(rsG9; z2Alb+b@k(1Ol0~xb1vRt&es}=h4(m+o z*a>`*eWFH9OS$$eD`6Y6-!Z71GEH_TvnzmzothP~uXU!W#D7FvGBtAV8ri$NUD?1|t+29Bb6nq6DE+V0eo_YS_ z$|Ug-liyKWbdyVY;0^6@WE8lbBLc z&RhH}>2o9H9qqaL(De2%zj_`&wP@@rhKMjxBF50ijgzupz>6AVROgHz4z zqwu;eD-G+&KBHYl+;c^AtCZP*>>K12OstK0>EG(W&dVKqBlu#`jh0+Io!FU$$&wdwWgA`^i#=ANyOUTC>(6 zMTs*?<8&5ee{&%QRc7<+mTfK3&O3QRXMd^{1u-dastnE4`EoX%czKEo5o;=Gc;?DS zoSF8`x%l~P@df+v4${NqU(Wa14bv`%Uylw`aU|+h^NoJ&Ake*#;oecwvFmJ zn+M0qPa)97Z|tkmtO-NY>#Wq<8y==B;={|%=EKIH^%&>qPD!9FeVCDjFw!^Ph?^CJ zPLDv(TmObLas`l&C!6B$_-!NoqX!wBWdG4PJ?qKESD&iqa^#O@j#zZr7>h4E2pkyC;RqWE1y|_x?K4hxe1VKlOFFsG+kZro)Z=6%UAM zM*S)rI!-|sY*3g7_yXk!M&`1Jdj`d_^t-Rg2V;fR*RQE|B_rS$l@oX2Bj|tVF$018 z^9R94>^mJG0iWRb71ed9{0R0_Uq2B%Rj635k5BI!gEtB+?LG1ExMZ9kSi#*tP?k92 zX|7)=-xp)^M6M-)#hsnghobWg3zpFbRl)1m3;PcO7by9L9}gM$53)sdz>SrGlS%Q& zW9d{k$<4y`&k?kwCJ;(`p|urDN)CWZB-beN3K%8U(s9Dz@!FDT$8+13 z2kD+J#os%EQzzk02lBEM}TCN|r<5Icg zSKQI>6fgMDqtN~K^?#Fqf>Z*yZ1}&+E&DdIj3h6z2(nFRLD4cbH$Sit6Zex|JgP?} zqZ2tgH>kY=3Je$DCjn)Cg4ROFk4YwCKxn;KAF{)>R(}#~Kh}$}MC%l-pE( zWHkzB|6zP@7pKm5B9}K)^I%c_mX4rz(U65WTs_i8$7E_2Z(j z7#{ET578<&*3X=BeNdMuYmAp~{Vv|H6djH}Gz+HqSTbZ)^o_gCUYd?lVX=n&?8h8` zhCatNnVIeRH}`WdOh8d1?f`F`6ocSxVij5odQFT%KaAmt7x@f?i82<9%|^@X_5TX` z#2WKtk7pYhW!rdmPtbCjPI-O-6f`_>1_D$GrOfL@!fKSTPWQXv98%`2em|>-ZJJiwGuD$C9T?ncqVXpZUY-}4%Wyq-A77o=0`E_a7yoe zqUhxkui4ahs%H@;&0B@d)9uRQqdvTUb)wY0V+(B`OK%-JU|luRSw+A>CmlM!W)$?Q zH~Dosei^|j6KFV_DdLg$g1%T8vP*_JcB}=P7E|N_^oX;^6u4ygB`z=_yI_XPDO;~s z3`-tx7b*|!iIVd!@P#nPe;6u5*}cJpE9BW~I#gg^kH>P;BUL=`(7wGmHyAkPZ|cK! zs2QT3LuRTZ9AlE>N@9Xo7pDT18Cs<|3vC1Iil_tdQab9U{{auIU|bfB9o{bJOfNT3 zpp*kz7gW7{Q7p5WkMl84>#aS{zoleuOo@f!>ddW-olDwT_CLR5{Z5b7i?g@n)Ggk{ zMq5bmygrNWpi^@hGq>RG<};4k z0l3Mk#^C;PznMyjRHIWg@P(SXQC2}m>UO {C;is(?>5bVsnU3{7k*sp9$?tnnu1 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

  • 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�>1>8YHK9ZNdjmw)G! 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 7) { + setupTypeNumber(test); + } + + if (_dataCache == null) { + _dataCache = createData(_typeNumber, _errorCorrectionLevel, _dataList); + } + + mapData(_dataCache, maskPattern); + }; + + var setupPositionProbePattern = function(row, col) { + + for (var r = -1; r <= 7; r += 1) { + + if (row + r <= -1 || _moduleCount <= row + r) continue; + + for (var c = -1; c <= 7; c += 1) { + + if (col + c <= -1 || _moduleCount <= col + c) continue; + + if ( (0 <= r && r <= 6 && (c == 0 || c == 6) ) + || (0 <= c && c <= 6 && (r == 0 || r == 6) ) + || (2 <= r && r <= 4 && 2 <= c && c <= 4) ) { + _modules[row + r][col + c] = true; + } else { + _modules[row + r][col + c] = false; + } + } + } + }; + + var getBestMaskPattern = function() { + + var minLostPoint = 0; + var pattern = 0; + + for (var i = 0; i < 8; i += 1) { + + makeImpl(true, i); + + var lostPoint = QRUtil.getLostPoint(_this); + + if (i == 0 || minLostPoint > lostPoint) { + minLostPoint = lostPoint; + pattern = i; + } + } + + return pattern; + }; + + var setupTimingPattern = function() { + + for (var r = 8; r < _moduleCount - 8; r += 1) { + if (_modules[r][6] != null) { + continue; + } + _modules[r][6] = (r % 2 == 0); + } + + for (var c = 8; c < _moduleCount - 8; c += 1) { + if (_modules[6][c] != null) { + continue; + } + _modules[6][c] = (c % 2 == 0); + } + }; + + var setupPositionAdjustPattern = function() { + + var pos = QRUtil.getPatternPosition(_typeNumber); + + for (var i = 0; i < pos.length; i += 1) { + + for (var j = 0; j < pos.length; j += 1) { + + var row = pos[i]; + var col = pos[j]; + + if (_modules[row][col] != null) { + continue; + } + + for (var r = -2; r <= 2; r += 1) { + + for (var c = -2; c <= 2; c += 1) { + + if (r == -2 || r == 2 || c == -2 || c == 2 + || (r == 0 && c == 0) ) { + _modules[row + r][col + c] = true; + } else { + _modules[row + r][col + c] = false; + } + } + } + } + } + }; + + var setupTypeNumber = function(test) { + + var bits = QRUtil.getBCHTypeNumber(_typeNumber); + + for (var i = 0; i < 18; i += 1) { + var mod = (!test && ( (bits >> i) & 1) == 1); + _modules[Math.floor(i / 3)][i % 3 + _moduleCount - 8 - 3] = mod; + } + + for (var i = 0; i < 18; i += 1) { + var mod = (!test && ( (bits >> i) & 1) == 1); + _modules[i % 3 + _moduleCount - 8 - 3][Math.floor(i / 3)] = mod; + } + }; + + var setupTypeInfo = function(test, maskPattern) { + + var data = (_errorCorrectionLevel << 3) | maskPattern; + var bits = QRUtil.getBCHTypeInfo(data); + + // vertical + for (var i = 0; i < 15; i += 1) { + + var mod = (!test && ( (bits >> i) & 1) == 1); + + if (i < 6) { + _modules[i][8] = mod; + } else if (i < 8) { + _modules[i + 1][8] = mod; + } else { + _modules[_moduleCount - 15 + i][8] = mod; + } + } + + // horizontal + for (var i = 0; i < 15; i += 1) { + + var mod = (!test && ( (bits >> i) & 1) == 1); + + if (i < 8) { + _modules[8][_moduleCount - i - 1] = mod; + } else if (i < 9) { + _modules[8][15 - i - 1 + 1] = mod; + } else { + _modules[8][15 - i - 1] = mod; + } + } + + // fixed module + _modules[_moduleCount - 8][8] = (!test); + }; + + var mapData = function(data, maskPattern) { + + var inc = -1; + var row = _moduleCount - 1; + var bitIndex = 7; + var byteIndex = 0; + var maskFunc = QRUtil.getMaskFunction(maskPattern); + + for (var col = _moduleCount - 1; col > 0; col -= 2) { + + if (col == 6) col -= 1; + + while (true) { + + for (var c = 0; c < 2; c += 1) { + + if (_modules[row][col - c] == null) { + + var dark = false; + + if (byteIndex < data.length) { + dark = ( ( (data[byteIndex] >>> bitIndex) & 1) == 1); + } + + var mask = maskFunc(row, col - c); + + if (mask) { + dark = !dark; + } + + _modules[row][col - c] = dark; + bitIndex -= 1; + + if (bitIndex == -1) { + byteIndex += 1; + bitIndex = 7; + } + } + } + + row += inc; + + if (row < 0 || _moduleCount <= row) { + row -= inc; + inc = -inc; + break; + } + } + } + }; + + var createBytes = function(buffer, rsBlocks) { + + var offset = 0; + + var maxDcCount = 0; + var maxEcCount = 0; + + var dcdata = new Array(rsBlocks.length); + var ecdata = new Array(rsBlocks.length); + + for (var r = 0; r < rsBlocks.length; r += 1) { + + var dcCount = rsBlocks[r].dataCount; + var ecCount = rsBlocks[r].totalCount - dcCount; + + maxDcCount = Math.max(maxDcCount, dcCount); + maxEcCount = Math.max(maxEcCount, ecCount); + + dcdata[r] = new Array(dcCount); + + for (var i = 0; i < dcdata[r].length; i += 1) { + dcdata[r][i] = 0xff & buffer.getBuffer()[i + offset]; + } + offset += dcCount; + + var rsPoly = QRUtil.getErrorCorrectPolynomial(ecCount); + var rawPoly = qrPolynomial(dcdata[r], rsPoly.getLength() - 1); + + var modPoly = rawPoly.mod(rsPoly); + ecdata[r] = new Array(rsPoly.getLength() - 1); + for (var i = 0; i < ecdata[r].length; i += 1) { + var modIndex = i + modPoly.getLength() - ecdata[r].length; + ecdata[r][i] = (modIndex >= 0)? modPoly.getAt(modIndex) : 0; + } + } + + var totalCodeCount = 0; + for (var i = 0; i < rsBlocks.length; i += 1) { + totalCodeCount += rsBlocks[i].totalCount; + } + + var data = new Array(totalCodeCount); + var index = 0; + + for (var i = 0; i < maxDcCount; i += 1) { + for (var r = 0; r < rsBlocks.length; r += 1) { + if (i < dcdata[r].length) { + data[index] = dcdata[r][i]; + index += 1; + } + } + } + + for (var i = 0; i < maxEcCount; i += 1) { + for (var r = 0; r < rsBlocks.length; r += 1) { + if (i < ecdata[r].length) { + data[index] = ecdata[r][i]; + index += 1; + } + } + } + + return data; + }; + + var createData = function(typeNumber, errorCorrectionLevel, dataList) { + + var rsBlocks = QRRSBlock.getRSBlocks(typeNumber, errorCorrectionLevel); + + var buffer = qrBitBuffer(); + + for (var i = 0; i < dataList.length; i += 1) { + var data = dataList[i]; + buffer.put(data.getMode(), 4); + buffer.put(data.getLength(), QRUtil.getLengthInBits(data.getMode(), typeNumber) ); + data.write(buffer); + } + + // calc num max data. + var totalDataCount = 0; + for (var i = 0; i < rsBlocks.length; i += 1) { + totalDataCount += rsBlocks[i].dataCount; + } + + if (buffer.getLengthInBits() > totalDataCount * 8) { + throw 'code length overflow. (' + + buffer.getLengthInBits() + + '>' + + totalDataCount * 8 + + ')'; + } + + // end code + if (buffer.getLengthInBits() + 4 <= totalDataCount * 8) { + buffer.put(0, 4); + } + + // padding + while (buffer.getLengthInBits() % 8 != 0) { + buffer.putBit(false); + } + + // padding + while (true) { + + if (buffer.getLengthInBits() >= totalDataCount * 8) { + break; + } + buffer.put(PAD0, 8); + + if (buffer.getLengthInBits() >= totalDataCount * 8) { + break; + } + buffer.put(PAD1, 8); + } + + return createBytes(buffer, rsBlocks); + }; + + _this.addData = function(data, mode) { + + mode = mode || 'Byte'; + + var newData = null; + + switch(mode) { + case 'Numeric' : + newData = qrNumber(data); + break; + case 'Alphanumeric' : + newData = qrAlphaNum(data); + break; + case 'Byte' : + newData = qr8BitByte(data); + break; + case 'Kanji' : + newData = qrKanji(data); + break; + default : + throw 'mode:' + mode; + } + + _dataList.push(newData); + _dataCache = null; + }; + + _this.isDark = function(row, col) { + if (row < 0 || _moduleCount <= row || col < 0 || _moduleCount <= col) { + throw row + ',' + col; + } + return _modules[row][col]; + }; + + _this.getModuleCount = function() { + return _moduleCount; + }; + + _this.make = function() { + if (_typeNumber < 1) { + var typeNumber = 1; + + for (; typeNumber < 40; typeNumber++) { + var rsBlocks = QRRSBlock.getRSBlocks(typeNumber, _errorCorrectionLevel); + var buffer = qrBitBuffer(); + + for (var i = 0; i < _dataList.length; i++) { + var data = _dataList[i]; + buffer.put(data.getMode(), 4); + buffer.put(data.getLength(), QRUtil.getLengthInBits(data.getMode(), typeNumber) ); + data.write(buffer); + } + + var totalDataCount = 0; + for (var i = 0; i < rsBlocks.length; i++) { + totalDataCount += rsBlocks[i].dataCount; + } + + if (buffer.getLengthInBits() <= totalDataCount * 8) { + break; + } + } + + _typeNumber = typeNumber; + } + + makeImpl(false, getBestMaskPattern() ); + }; + + _this.createTableTag = function(cellSize, margin) { + + cellSize = cellSize || 2; + margin = (typeof margin == 'undefined')? cellSize * 4 : margin; + + var qrHtml = ''; + + qrHtml += ''; + qrHtml += ''; + + for (var r = 0; r < _this.getModuleCount(); r += 1) { + + qrHtml += ''; + + for (var c = 0; c < _this.getModuleCount(); c += 1) { + qrHtml += ''; + } + + qrHtml += ''; + qrHtml += '
    '; + } + + qrHtml += '
    '; + + return qrHtml; + }; + + _this.createSvgTag = function(cellSize, margin, alt, title) { + + var opts = {}; + if (typeof arguments[0] == 'object') { + // Called by options. + opts = arguments[0]; + // overwrite cellSize and margin. + cellSize = opts.cellSize; + margin = opts.margin; + alt = opts.alt; + title = opts.title; + } + + cellSize = cellSize || 2; + margin = (typeof margin == 'undefined')? cellSize * 4 : margin; + + // Compose alt property surrogate + alt = (typeof alt === 'string') ? {text: alt} : alt || {}; + alt.text = alt.text || null; + alt.id = (alt.text) ? alt.id || 'qrcode-description' : null; + + // Compose title property surrogate + title = (typeof title === 'string') ? {text: title} : title || {}; + title.text = title.text || null; + title.id = (title.text) ? title.id || 'qrcode-title' : null; + + var size = _this.getModuleCount() * cellSize + margin * 2; + var c, mc, r, mr, qrSvg='', rect; + + rect = 'l' + cellSize + ',0 0,' + cellSize + + ' -' + cellSize + ',0 0,-' + cellSize + 'z '; + + qrSvg += '' + + escapeXml(title.text) + '' : ''; + qrSvg += (alt.text) ? '' + + escapeXml(alt.text) + '' : ''; + qrSvg += ''; + qrSvg += ''; + qrSvg += ''; + + return qrSvg; + }; + + _this.createDataURL = function(cellSize, margin) { + + cellSize = cellSize || 2; + margin = (typeof margin == 'undefined')? cellSize * 4 : margin; + + var size = _this.getModuleCount() * cellSize + margin * 2; + var min = margin; + var max = size - margin; + + return createDataURL(size, size, function(x, y) { + if (min <= x && x < max && min <= y && y < max) { + var c = Math.floor( (x - min) / cellSize); + var r = Math.floor( (y - min) / cellSize); + return _this.isDark(r, c)? 0 : 1; + } else { + return 1; + } + } ); + }; + + _this.createImgTag = function(cellSize, margin, alt) { + + cellSize = cellSize || 2; + margin = (typeof margin == 'undefined')? cellSize * 4 : margin; + + var size = _this.getModuleCount() * cellSize + margin * 2; + + var img = ''; + img += '': escaped += '>'; break; + case '&': escaped += '&'; break; + case '"': escaped += '"'; break; + default : escaped += c; break; + } + } + return escaped; + }; + + var _createHalfASCII = function(margin) { + var cellSize = 1; + margin = (typeof margin == 'undefined')? cellSize * 2 : margin; + + var size = _this.getModuleCount() * cellSize + margin * 2; + var min = margin; + var max = size - margin; + + var y, x, r1, r2, p; + + var blocks = { + '██': '█', + '█ ': '▀', + ' █': '▄', + ' ': ' ' + }; + + var blocksLastLineNoMargin = { + '██': '▀', + '█ ': '▀', + ' █': ' ', + ' ': ' ' + }; + + var ascii = ''; + for (y = 0; y < size; y += 2) { + r1 = Math.floor((y - min) / cellSize); + r2 = Math.floor((y + 1 - min) / cellSize); + for (x = 0; x < size; x += 1) { + p = '█'; + + if (min <= x && x < max && min <= y && y < max && _this.isDark(r1, Math.floor((x - min) / cellSize))) { + p = ' '; + } + + if (min <= x && x < max && min <= y+1 && y+1 < max && _this.isDark(r2, Math.floor((x - min) / cellSize))) { + p += ' '; + } + else { + p += '█'; + } + + // Output 2 characters per pixel, to create full square. 1 character per pixels gives only half width of square. + ascii += (margin < 1 && y+1 >= max) ? blocksLastLineNoMargin[p] : blocks[p]; + } + + ascii += '\n'; + } + + if (size % 2 && margin > 0) { + return ascii.substring(0, ascii.length - size - 1) + Array(size+1).join('▀'); + } + + return ascii.substring(0, ascii.length-1); + }; + + _this.createASCII = function(cellSize, margin) { + cellSize = cellSize || 1; + + if (cellSize < 2) { + return _createHalfASCII(margin); + } + + cellSize -= 1; + margin = (typeof margin == 'undefined')? cellSize * 2 : margin; + + var size = _this.getModuleCount() * cellSize + margin * 2; + var min = margin; + var max = size - margin; + + var y, x, r, p; + + var white = Array(cellSize+1).join('██'); + var black = Array(cellSize+1).join(' '); + + var ascii = ''; + var line = ''; + for (y = 0; y < size; y += 1) { + r = Math.floor( (y - min) / cellSize); + line = ''; + for (x = 0; x < size; x += 1) { + p = 1; + + if (min <= x && x < max && min <= y && y < max && _this.isDark(r, Math.floor((x - min) / cellSize))) { + p = 0; + } + + // Output 2 characters per pixel, to create full square. 1 character per pixels gives only half width of square. + line += p ? white : black; + } + + for (r = 0; r < cellSize; r += 1) { + ascii += line + '\n'; + } + } + + return ascii.substring(0, ascii.length-1); + }; + + _this.renderTo2dContext = function(context, cellSize) { + cellSize = cellSize || 2; + var length = _this.getModuleCount(); + for (var row = 0; row < length; row++) { + for (var col = 0; col < length; col++) { + context.fillStyle = _this.isDark(row, col) ? 'black' : 'white'; + context.fillRect(col * cellSize, row * cellSize, cellSize, cellSize); + } + } + } + + return _this; + }; + + //--------------------------------------------------------------------- + // qrcode.stringToBytes + //--------------------------------------------------------------------- + + qrcode.stringToBytesFuncs = { + 'default' : function(s) { + var bytes = []; + for (var i = 0; i < s.length; i += 1) { + var c = s.charCodeAt(i); + bytes.push(c & 0xff); + } + return bytes; + } + }; + + qrcode.stringToBytes = qrcode.stringToBytesFuncs['default']; + + //--------------------------------------------------------------------- + // qrcode.createStringToBytes + //--------------------------------------------------------------------- + + /** + * @param unicodeData base64 string of byte array. + * [16bit Unicode],[16bit Bytes], ... + * @param numChars + */ + qrcode.createStringToBytes = function(unicodeData, numChars) { + + // create conversion map. + + var unicodeMap = function() { + + var bin = base64DecodeInputStream(unicodeData); + var read = function() { + var b = bin.read(); + if (b == -1) throw 'eof'; + return b; + }; + + var count = 0; + var unicodeMap = {}; + while (true) { + var b0 = bin.read(); + if (b0 == -1) break; + var b1 = read(); + var b2 = read(); + var b3 = read(); + var k = String.fromCharCode( (b0 << 8) | b1); + var v = (b2 << 8) | b3; + unicodeMap[k] = v; + count += 1; + } + if (count != numChars) { + throw count + ' != ' + numChars; + } + + return unicodeMap; + }(); + + var unknownChar = '?'.charCodeAt(0); + + return function(s) { + var bytes = []; + for (var i = 0; i < s.length; i += 1) { + var c = s.charCodeAt(i); + if (c < 128) { + bytes.push(c); + } else { + var b = unicodeMap[s.charAt(i)]; + if (typeof b == 'number') { + if ( (b & 0xff) == b) { + // 1byte + bytes.push(b); + } else { + // 2bytes + bytes.push(b >>> 8); + bytes.push(b & 0xff); + } + } else { + bytes.push(unknownChar); + } + } + } + return bytes; + }; + }; + + //--------------------------------------------------------------------- + // QRMode + //--------------------------------------------------------------------- + + var QRMode = { + MODE_NUMBER : 1 << 0, + MODE_ALPHA_NUM : 1 << 1, + MODE_8BIT_BYTE : 1 << 2, + MODE_KANJI : 1 << 3 + }; + + //--------------------------------------------------------------------- + // QRErrorCorrectionLevel + //--------------------------------------------------------------------- + + var QRErrorCorrectionLevel = { + L : 1, + M : 0, + Q : 3, + H : 2 + }; + + //--------------------------------------------------------------------- + // QRMaskPattern + //--------------------------------------------------------------------- + + var QRMaskPattern = { + PATTERN000 : 0, + PATTERN001 : 1, + PATTERN010 : 2, + PATTERN011 : 3, + PATTERN100 : 4, + PATTERN101 : 5, + PATTERN110 : 6, + PATTERN111 : 7 + }; + + //--------------------------------------------------------------------- + // QRUtil + //--------------------------------------------------------------------- + + var QRUtil = function() { + + var PATTERN_POSITION_TABLE = [ + [], + [6, 18], + [6, 22], + [6, 26], + [6, 30], + [6, 34], + [6, 22, 38], + [6, 24, 42], + [6, 26, 46], + [6, 28, 50], + [6, 30, 54], + [6, 32, 58], + [6, 34, 62], + [6, 26, 46, 66], + [6, 26, 48, 70], + [6, 26, 50, 74], + [6, 30, 54, 78], + [6, 30, 56, 82], + [6, 30, 58, 86], + [6, 34, 62, 90], + [6, 28, 50, 72, 94], + [6, 26, 50, 74, 98], + [6, 30, 54, 78, 102], + [6, 28, 54, 80, 106], + [6, 32, 58, 84, 110], + [6, 30, 58, 86, 114], + [6, 34, 62, 90, 118], + [6, 26, 50, 74, 98, 122], + [6, 30, 54, 78, 102, 126], + [6, 26, 52, 78, 104, 130], + [6, 30, 56, 82, 108, 134], + [6, 34, 60, 86, 112, 138], + [6, 30, 58, 86, 114, 142], + [6, 34, 62, 90, 118, 146], + [6, 30, 54, 78, 102, 126, 150], + [6, 24, 50, 76, 102, 128, 154], + [6, 28, 54, 80, 106, 132, 158], + [6, 32, 58, 84, 110, 136, 162], + [6, 26, 54, 82, 110, 138, 166], + [6, 30, 58, 86, 114, 142, 170] + ]; + var G15 = (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0); + var G18 = (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0); + var G15_MASK = (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1); + + var _this = {}; + + var getBCHDigit = function(data) { + var digit = 0; + while (data != 0) { + digit += 1; + data >>>= 1; + } + return digit; + }; + + _this.getBCHTypeInfo = function(data) { + var d = data << 10; + while (getBCHDigit(d) - getBCHDigit(G15) >= 0) { + d ^= (G15 << (getBCHDigit(d) - getBCHDigit(G15) ) ); + } + return ( (data << 10) | d) ^ G15_MASK; + }; + + _this.getBCHTypeNumber = function(data) { + var d = data << 12; + while (getBCHDigit(d) - getBCHDigit(G18) >= 0) { + d ^= (G18 << (getBCHDigit(d) - getBCHDigit(G18) ) ); + } + return (data << 12) | d; + }; + + _this.getPatternPosition = function(typeNumber) { + return PATTERN_POSITION_TABLE[typeNumber - 1]; + }; + + _this.getMaskFunction = function(maskPattern) { + + switch (maskPattern) { + + case QRMaskPattern.PATTERN000 : + return function(i, j) { return (i + j) % 2 == 0; }; + case QRMaskPattern.PATTERN001 : + return function(i, j) { return i % 2 == 0; }; + case QRMaskPattern.PATTERN010 : + return function(i, j) { return j % 3 == 0; }; + case QRMaskPattern.PATTERN011 : + return function(i, j) { return (i + j) % 3 == 0; }; + case QRMaskPattern.PATTERN100 : + return function(i, j) { return (Math.floor(i / 2) + Math.floor(j / 3) ) % 2 == 0; }; + case QRMaskPattern.PATTERN101 : + return function(i, j) { return (i * j) % 2 + (i * j) % 3 == 0; }; + case QRMaskPattern.PATTERN110 : + return function(i, j) { return ( (i * j) % 2 + (i * j) % 3) % 2 == 0; }; + case QRMaskPattern.PATTERN111 : + return function(i, j) { return ( (i * j) % 3 + (i + j) % 2) % 2 == 0; }; + + default : + throw 'bad maskPattern:' + maskPattern; + } + }; + + _this.getErrorCorrectPolynomial = function(errorCorrectLength) { + var a = qrPolynomial([1], 0); + for (var i = 0; i < errorCorrectLength; i += 1) { + a = a.multiply(qrPolynomial([1, QRMath.gexp(i)], 0) ); + } + return a; + }; + + _this.getLengthInBits = function(mode, type) { + + if (1 <= type && type < 10) { + + // 1 - 9 + + switch(mode) { + case QRMode.MODE_NUMBER : return 10; + case QRMode.MODE_ALPHA_NUM : return 9; + case QRMode.MODE_8BIT_BYTE : return 8; + case QRMode.MODE_KANJI : return 8; + default : + throw 'mode:' + mode; + } + + } else if (type < 27) { + + // 10 - 26 + + switch(mode) { + case QRMode.MODE_NUMBER : return 12; + case QRMode.MODE_ALPHA_NUM : return 11; + case QRMode.MODE_8BIT_BYTE : return 16; + case QRMode.MODE_KANJI : return 10; + default : + throw 'mode:' + mode; + } + + } else if (type < 41) { + + // 27 - 40 + + switch(mode) { + case QRMode.MODE_NUMBER : return 14; + case QRMode.MODE_ALPHA_NUM : return 13; + case QRMode.MODE_8BIT_BYTE : return 16; + case QRMode.MODE_KANJI : return 12; + default : + throw 'mode:' + mode; + } + + } else { + throw 'type:' + type; + } + }; + + _this.getLostPoint = function(qrcode) { + + var moduleCount = qrcode.getModuleCount(); + + var lostPoint = 0; + + // LEVEL1 + + for (var row = 0; row < moduleCount; row += 1) { + for (var col = 0; col < moduleCount; col += 1) { + + var sameCount = 0; + var dark = qrcode.isDark(row, col); + + for (var r = -1; r <= 1; r += 1) { + + if (row + r < 0 || moduleCount <= row + r) { + continue; + } + + for (var c = -1; c <= 1; c += 1) { + + if (col + c < 0 || moduleCount <= col + c) { + continue; + } + + if (r == 0 && c == 0) { + continue; + } + + if (dark == qrcode.isDark(row + r, col + c) ) { + sameCount += 1; + } + } + } + + if (sameCount > 5) { + lostPoint += (3 + sameCount - 5); + } + } + }; + + // LEVEL2 + + for (var row = 0; row < moduleCount - 1; row += 1) { + for (var col = 0; col < moduleCount - 1; col += 1) { + var count = 0; + if (qrcode.isDark(row, col) ) count += 1; + if (qrcode.isDark(row + 1, col) ) count += 1; + if (qrcode.isDark(row, col + 1) ) count += 1; + if (qrcode.isDark(row + 1, col + 1) ) count += 1; + if (count == 0 || count == 4) { + lostPoint += 3; + } + } + } + + // LEVEL3 + + for (var row = 0; row < moduleCount; row += 1) { + for (var col = 0; col < moduleCount - 6; col += 1) { + if (qrcode.isDark(row, col) + && !qrcode.isDark(row, col + 1) + && qrcode.isDark(row, col + 2) + && qrcode.isDark(row, col + 3) + && qrcode.isDark(row, col + 4) + && !qrcode.isDark(row, col + 5) + && qrcode.isDark(row, col + 6) ) { + lostPoint += 40; + } + } + } + + for (var col = 0; col < moduleCount; col += 1) { + for (var row = 0; row < moduleCount - 6; row += 1) { + if (qrcode.isDark(row, col) + && !qrcode.isDark(row + 1, col) + && qrcode.isDark(row + 2, col) + && qrcode.isDark(row + 3, col) + && qrcode.isDark(row + 4, col) + && !qrcode.isDark(row + 5, col) + && qrcode.isDark(row + 6, col) ) { + lostPoint += 40; + } + } + } + + // LEVEL4 + + var darkCount = 0; + + for (var col = 0; col < moduleCount; col += 1) { + for (var row = 0; row < moduleCount; row += 1) { + if (qrcode.isDark(row, col) ) { + darkCount += 1; + } + } + } + + var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5; + lostPoint += ratio * 10; + + return lostPoint; + }; + + return _this; + }(); + + //--------------------------------------------------------------------- + // QRMath + //--------------------------------------------------------------------- + + var QRMath = function() { + + var EXP_TABLE = new Array(256); + var LOG_TABLE = new Array(256); + + // initialize tables + for (var i = 0; i < 8; i += 1) { + EXP_TABLE[i] = 1 << i; + } + for (var i = 8; i < 256; i += 1) { + EXP_TABLE[i] = EXP_TABLE[i - 4] + ^ EXP_TABLE[i - 5] + ^ EXP_TABLE[i - 6] + ^ EXP_TABLE[i - 8]; + } + for (var i = 0; i < 255; i += 1) { + LOG_TABLE[EXP_TABLE[i] ] = i; + } + + var _this = {}; + + _this.glog = function(n) { + + if (n < 1) { + throw 'glog(' + n + ')'; + } + + return LOG_TABLE[n]; + }; + + _this.gexp = function(n) { + + while (n < 0) { + n += 255; + } + + while (n >= 256) { + n -= 255; + } + + return EXP_TABLE[n]; + }; + + return _this; + }(); + + //--------------------------------------------------------------------- + // qrPolynomial + //--------------------------------------------------------------------- + + function qrPolynomial(num, shift) { + + if (typeof num.length == 'undefined') { + throw num.length + '/' + shift; + } + + var _num = function() { + var offset = 0; + while (offset < num.length && num[offset] == 0) { + offset += 1; + } + var _num = new Array(num.length - offset + shift); + for (var i = 0; i < num.length - offset; i += 1) { + _num[i] = num[i + offset]; + } + return _num; + }(); + + var _this = {}; + + _this.getAt = function(index) { + return _num[index]; + }; + + _this.getLength = function() { + return _num.length; + }; + + _this.multiply = function(e) { + + var num = new Array(_this.getLength() + e.getLength() - 1); + + for (var i = 0; i < _this.getLength(); i += 1) { + for (var j = 0; j < e.getLength(); j += 1) { + num[i + j] ^= QRMath.gexp(QRMath.glog(_this.getAt(i) ) + QRMath.glog(e.getAt(j) ) ); + } + } + + return qrPolynomial(num, 0); + }; + + _this.mod = function(e) { + + if (_this.getLength() - e.getLength() < 0) { + return _this; + } + + var ratio = QRMath.glog(_this.getAt(0) ) - QRMath.glog(e.getAt(0) ); + + var num = new Array(_this.getLength() ); + for (var i = 0; i < _this.getLength(); i += 1) { + num[i] = _this.getAt(i); + } + + for (var i = 0; i < e.getLength(); i += 1) { + num[i] ^= QRMath.gexp(QRMath.glog(e.getAt(i) ) + ratio); + } + + // recursive call + return qrPolynomial(num, 0).mod(e); + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // QRRSBlock + //--------------------------------------------------------------------- + + var QRRSBlock = function() { + + var RS_BLOCK_TABLE = [ + + // L + // M + // Q + // H + + // 1 + [1, 26, 19], + [1, 26, 16], + [1, 26, 13], + [1, 26, 9], + + // 2 + [1, 44, 34], + [1, 44, 28], + [1, 44, 22], + [1, 44, 16], + + // 3 + [1, 70, 55], + [1, 70, 44], + [2, 35, 17], + [2, 35, 13], + + // 4 + [1, 100, 80], + [2, 50, 32], + [2, 50, 24], + [4, 25, 9], + + // 5 + [1, 134, 108], + [2, 67, 43], + [2, 33, 15, 2, 34, 16], + [2, 33, 11, 2, 34, 12], + + // 6 + [2, 86, 68], + [4, 43, 27], + [4, 43, 19], + [4, 43, 15], + + // 7 + [2, 98, 78], + [4, 49, 31], + [2, 32, 14, 4, 33, 15], + [4, 39, 13, 1, 40, 14], + + // 8 + [2, 121, 97], + [2, 60, 38, 2, 61, 39], + [4, 40, 18, 2, 41, 19], + [4, 40, 14, 2, 41, 15], + + // 9 + [2, 146, 116], + [3, 58, 36, 2, 59, 37], + [4, 36, 16, 4, 37, 17], + [4, 36, 12, 4, 37, 13], + + // 10 + [2, 86, 68, 2, 87, 69], + [4, 69, 43, 1, 70, 44], + [6, 43, 19, 2, 44, 20], + [6, 43, 15, 2, 44, 16], + + // 11 + [4, 101, 81], + [1, 80, 50, 4, 81, 51], + [4, 50, 22, 4, 51, 23], + [3, 36, 12, 8, 37, 13], + + // 12 + [2, 116, 92, 2, 117, 93], + [6, 58, 36, 2, 59, 37], + [4, 46, 20, 6, 47, 21], + [7, 42, 14, 4, 43, 15], + + // 13 + [4, 133, 107], + [8, 59, 37, 1, 60, 38], + [8, 44, 20, 4, 45, 21], + [12, 33, 11, 4, 34, 12], + + // 14 + [3, 145, 115, 1, 146, 116], + [4, 64, 40, 5, 65, 41], + [11, 36, 16, 5, 37, 17], + [11, 36, 12, 5, 37, 13], + + // 15 + [5, 109, 87, 1, 110, 88], + [5, 65, 41, 5, 66, 42], + [5, 54, 24, 7, 55, 25], + [11, 36, 12, 7, 37, 13], + + // 16 + [5, 122, 98, 1, 123, 99], + [7, 73, 45, 3, 74, 46], + [15, 43, 19, 2, 44, 20], + [3, 45, 15, 13, 46, 16], + + // 17 + [1, 135, 107, 5, 136, 108], + [10, 74, 46, 1, 75, 47], + [1, 50, 22, 15, 51, 23], + [2, 42, 14, 17, 43, 15], + + // 18 + [5, 150, 120, 1, 151, 121], + [9, 69, 43, 4, 70, 44], + [17, 50, 22, 1, 51, 23], + [2, 42, 14, 19, 43, 15], + + // 19 + [3, 141, 113, 4, 142, 114], + [3, 70, 44, 11, 71, 45], + [17, 47, 21, 4, 48, 22], + [9, 39, 13, 16, 40, 14], + + // 20 + [3, 135, 107, 5, 136, 108], + [3, 67, 41, 13, 68, 42], + [15, 54, 24, 5, 55, 25], + [15, 43, 15, 10, 44, 16], + + // 21 + [4, 144, 116, 4, 145, 117], + [17, 68, 42], + [17, 50, 22, 6, 51, 23], + [19, 46, 16, 6, 47, 17], + + // 22 + [2, 139, 111, 7, 140, 112], + [17, 74, 46], + [7, 54, 24, 16, 55, 25], + [34, 37, 13], + + // 23 + [4, 151, 121, 5, 152, 122], + [4, 75, 47, 14, 76, 48], + [11, 54, 24, 14, 55, 25], + [16, 45, 15, 14, 46, 16], + + // 24 + [6, 147, 117, 4, 148, 118], + [6, 73, 45, 14, 74, 46], + [11, 54, 24, 16, 55, 25], + [30, 46, 16, 2, 47, 17], + + // 25 + [8, 132, 106, 4, 133, 107], + [8, 75, 47, 13, 76, 48], + [7, 54, 24, 22, 55, 25], + [22, 45, 15, 13, 46, 16], + + // 26 + [10, 142, 114, 2, 143, 115], + [19, 74, 46, 4, 75, 47], + [28, 50, 22, 6, 51, 23], + [33, 46, 16, 4, 47, 17], + + // 27 + [8, 152, 122, 4, 153, 123], + [22, 73, 45, 3, 74, 46], + [8, 53, 23, 26, 54, 24], + [12, 45, 15, 28, 46, 16], + + // 28 + [3, 147, 117, 10, 148, 118], + [3, 73, 45, 23, 74, 46], + [4, 54, 24, 31, 55, 25], + [11, 45, 15, 31, 46, 16], + + // 29 + [7, 146, 116, 7, 147, 117], + [21, 73, 45, 7, 74, 46], + [1, 53, 23, 37, 54, 24], + [19, 45, 15, 26, 46, 16], + + // 30 + [5, 145, 115, 10, 146, 116], + [19, 75, 47, 10, 76, 48], + [15, 54, 24, 25, 55, 25], + [23, 45, 15, 25, 46, 16], + + // 31 + [13, 145, 115, 3, 146, 116], + [2, 74, 46, 29, 75, 47], + [42, 54, 24, 1, 55, 25], + [23, 45, 15, 28, 46, 16], + + // 32 + [17, 145, 115], + [10, 74, 46, 23, 75, 47], + [10, 54, 24, 35, 55, 25], + [19, 45, 15, 35, 46, 16], + + // 33 + [17, 145, 115, 1, 146, 116], + [14, 74, 46, 21, 75, 47], + [29, 54, 24, 19, 55, 25], + [11, 45, 15, 46, 46, 16], + + // 34 + [13, 145, 115, 6, 146, 116], + [14, 74, 46, 23, 75, 47], + [44, 54, 24, 7, 55, 25], + [59, 46, 16, 1, 47, 17], + + // 35 + [12, 151, 121, 7, 152, 122], + [12, 75, 47, 26, 76, 48], + [39, 54, 24, 14, 55, 25], + [22, 45, 15, 41, 46, 16], + + // 36 + [6, 151, 121, 14, 152, 122], + [6, 75, 47, 34, 76, 48], + [46, 54, 24, 10, 55, 25], + [2, 45, 15, 64, 46, 16], + + // 37 + [17, 152, 122, 4, 153, 123], + [29, 74, 46, 14, 75, 47], + [49, 54, 24, 10, 55, 25], + [24, 45, 15, 46, 46, 16], + + // 38 + [4, 152, 122, 18, 153, 123], + [13, 74, 46, 32, 75, 47], + [48, 54, 24, 14, 55, 25], + [42, 45, 15, 32, 46, 16], + + // 39 + [20, 147, 117, 4, 148, 118], + [40, 75, 47, 7, 76, 48], + [43, 54, 24, 22, 55, 25], + [10, 45, 15, 67, 46, 16], + + // 40 + [19, 148, 118, 6, 149, 119], + [18, 75, 47, 31, 76, 48], + [34, 54, 24, 34, 55, 25], + [20, 45, 15, 61, 46, 16] + ]; + + var qrRSBlock = function(totalCount, dataCount) { + var _this = {}; + _this.totalCount = totalCount; + _this.dataCount = dataCount; + return _this; + }; + + var _this = {}; + + var getRsBlockTable = function(typeNumber, errorCorrectionLevel) { + + switch(errorCorrectionLevel) { + case QRErrorCorrectionLevel.L : + return RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0]; + case QRErrorCorrectionLevel.M : + return RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1]; + case QRErrorCorrectionLevel.Q : + return RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2]; + case QRErrorCorrectionLevel.H : + return RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3]; + default : + return undefined; + } + }; + + _this.getRSBlocks = function(typeNumber, errorCorrectionLevel) { + + var rsBlock = getRsBlockTable(typeNumber, errorCorrectionLevel); + + if (typeof rsBlock == 'undefined') { + throw 'bad rs block @ typeNumber:' + typeNumber + + '/errorCorrectionLevel:' + errorCorrectionLevel; + } + + var length = rsBlock.length / 3; + + var list = []; + + for (var i = 0; i < length; i += 1) { + + var count = rsBlock[i * 3 + 0]; + var totalCount = rsBlock[i * 3 + 1]; + var dataCount = rsBlock[i * 3 + 2]; + + for (var j = 0; j < count; j += 1) { + list.push(qrRSBlock(totalCount, dataCount) ); + } + } + + return list; + }; + + return _this; + }(); + + //--------------------------------------------------------------------- + // qrBitBuffer + //--------------------------------------------------------------------- + + var qrBitBuffer = function() { + + var _buffer = []; + var _length = 0; + + var _this = {}; + + _this.getBuffer = function() { + return _buffer; + }; + + _this.getAt = function(index) { + var bufIndex = Math.floor(index / 8); + return ( (_buffer[bufIndex] >>> (7 - index % 8) ) & 1) == 1; + }; + + _this.put = function(num, length) { + for (var i = 0; i < length; i += 1) { + _this.putBit( ( (num >>> (length - i - 1) ) & 1) == 1); + } + }; + + _this.getLengthInBits = function() { + return _length; + }; + + _this.putBit = function(bit) { + + var bufIndex = Math.floor(_length / 8); + if (_buffer.length <= bufIndex) { + _buffer.push(0); + } + + if (bit) { + _buffer[bufIndex] |= (0x80 >>> (_length % 8) ); + } + + _length += 1; + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // qrNumber + //--------------------------------------------------------------------- + + var qrNumber = function(data) { + + var _mode = QRMode.MODE_NUMBER; + var _data = data; + + var _this = {}; + + _this.getMode = function() { + return _mode; + }; + + _this.getLength = function(buffer) { + return _data.length; + }; + + _this.write = function(buffer) { + + var data = _data; + + var i = 0; + + while (i + 2 < data.length) { + buffer.put(strToNum(data.substring(i, i + 3) ), 10); + i += 3; + } + + if (i < data.length) { + if (data.length - i == 1) { + buffer.put(strToNum(data.substring(i, i + 1) ), 4); + } else if (data.length - i == 2) { + buffer.put(strToNum(data.substring(i, i + 2) ), 7); + } + } + }; + + var strToNum = function(s) { + var num = 0; + for (var i = 0; i < s.length; i += 1) { + num = num * 10 + chatToNum(s.charAt(i) ); + } + return num; + }; + + var chatToNum = function(c) { + if ('0' <= c && c <= '9') { + return c.charCodeAt(0) - '0'.charCodeAt(0); + } + throw 'illegal char :' + c; + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // qrAlphaNum + //--------------------------------------------------------------------- + + var qrAlphaNum = function(data) { + + var _mode = QRMode.MODE_ALPHA_NUM; + var _data = data; + + var _this = {}; + + _this.getMode = function() { + return _mode; + }; + + _this.getLength = function(buffer) { + return _data.length; + }; + + _this.write = function(buffer) { + + var s = _data; + + var i = 0; + + while (i + 1 < s.length) { + buffer.put( + getCode(s.charAt(i) ) * 45 + + getCode(s.charAt(i + 1) ), 11); + i += 2; + } + + if (i < s.length) { + buffer.put(getCode(s.charAt(i) ), 6); + } + }; + + var getCode = function(c) { + + if ('0' <= c && c <= '9') { + return c.charCodeAt(0) - '0'.charCodeAt(0); + } else if ('A' <= c && c <= 'Z') { + return c.charCodeAt(0) - 'A'.charCodeAt(0) + 10; + } else { + switch (c) { + case ' ' : return 36; + case '$' : return 37; + case '%' : return 38; + case '*' : return 39; + case '+' : return 40; + case '-' : return 41; + case '.' : return 42; + case '/' : return 43; + case ':' : return 44; + default : + throw 'illegal char :' + c; + } + } + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // qr8BitByte + //--------------------------------------------------------------------- + + var qr8BitByte = function(data) { + + var _mode = QRMode.MODE_8BIT_BYTE; + var _data = data; + var _bytes = qrcode.stringToBytes(data); + + var _this = {}; + + _this.getMode = function() { + return _mode; + }; + + _this.getLength = function(buffer) { + return _bytes.length; + }; + + _this.write = function(buffer) { + for (var i = 0; i < _bytes.length; i += 1) { + buffer.put(_bytes[i], 8); + } + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // qrKanji + //--------------------------------------------------------------------- + + var qrKanji = function(data) { + + var _mode = QRMode.MODE_KANJI; + var _data = data; + + var stringToBytes = qrcode.stringToBytesFuncs['SJIS']; + if (!stringToBytes) { + throw 'sjis not supported.'; + } + !function(c, code) { + // self test for sjis support. + var test = stringToBytes(c); + if (test.length != 2 || ( (test[0] << 8) | test[1]) != code) { + throw 'sjis not supported.'; + } + }('\u53cb', 0x9746); + + var _bytes = stringToBytes(data); + + var _this = {}; + + _this.getMode = function() { + return _mode; + }; + + _this.getLength = function(buffer) { + return ~~(_bytes.length / 2); + }; + + _this.write = function(buffer) { + + var data = _bytes; + + var i = 0; + + while (i + 1 < data.length) { + + var c = ( (0xff & data[i]) << 8) | (0xff & data[i + 1]); + + if (0x8140 <= c && c <= 0x9FFC) { + c -= 0x8140; + } else if (0xE040 <= c && c <= 0xEBBF) { + c -= 0xC140; + } else { + throw 'illegal char at ' + (i + 1) + '/' + c; + } + + c = ( (c >>> 8) & 0xff) * 0xC0 + (c & 0xff); + + buffer.put(c, 13); + + i += 2; + } + + if (i < data.length) { + throw 'illegal char at ' + (i + 1); + } + }; + + return _this; + }; + + //===================================================================== + // GIF Support etc. + // + + //--------------------------------------------------------------------- + // byteArrayOutputStream + //--------------------------------------------------------------------- + + var byteArrayOutputStream = function() { + + var _bytes = []; + + var _this = {}; + + _this.writeByte = function(b) { + _bytes.push(b & 0xff); + }; + + _this.writeShort = function(i) { + _this.writeByte(i); + _this.writeByte(i >>> 8); + }; + + _this.writeBytes = function(b, off, len) { + off = off || 0; + len = len || b.length; + for (var i = 0; i < len; i += 1) { + _this.writeByte(b[i + off]); + } + }; + + _this.writeString = function(s) { + for (var i = 0; i < s.length; i += 1) { + _this.writeByte(s.charCodeAt(i) ); + } + }; + + _this.toByteArray = function() { + return _bytes; + }; + + _this.toString = function() { + var s = ''; + s += '['; + for (var i = 0; i < _bytes.length; i += 1) { + if (i > 0) { + s += ','; + } + s += _bytes[i]; + } + s += ']'; + return s; + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // base64EncodeOutputStream + //--------------------------------------------------------------------- + + var base64EncodeOutputStream = function() { + + var _buffer = 0; + var _buflen = 0; + var _length = 0; + var _base64 = ''; + + var _this = {}; + + var writeEncoded = function(b) { + _base64 += String.fromCharCode(encode(b & 0x3f) ); + }; + + var encode = function(n) { + if (n < 0) { + // error. + } else if (n < 26) { + return 0x41 + n; + } else if (n < 52) { + return 0x61 + (n - 26); + } else if (n < 62) { + return 0x30 + (n - 52); + } else if (n == 62) { + return 0x2b; + } else if (n == 63) { + return 0x2f; + } + throw 'n:' + n; + }; + + _this.writeByte = function(n) { + + _buffer = (_buffer << 8) | (n & 0xff); + _buflen += 8; + _length += 1; + + while (_buflen >= 6) { + writeEncoded(_buffer >>> (_buflen - 6) ); + _buflen -= 6; + } + }; + + _this.flush = function() { + + if (_buflen > 0) { + writeEncoded(_buffer << (6 - _buflen) ); + _buffer = 0; + _buflen = 0; + } + + if (_length % 3 != 0) { + // padding + var padlen = 3 - _length % 3; + for (var i = 0; i < padlen; i += 1) { + _base64 += '='; + } + } + }; + + _this.toString = function() { + return _base64; + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // base64DecodeInputStream + //--------------------------------------------------------------------- + + var base64DecodeInputStream = function(str) { + + var _str = str; + var _pos = 0; + var _buffer = 0; + var _buflen = 0; + + var _this = {}; + + _this.read = function() { + + while (_buflen < 8) { + + if (_pos >= _str.length) { + if (_buflen == 0) { + return -1; + } + throw 'unexpected end of file./' + _buflen; + } + + var c = _str.charAt(_pos); + _pos += 1; + + if (c == '=') { + _buflen = 0; + return -1; + } else if (c.match(/^\s$/) ) { + // ignore if whitespace. + continue; + } + + _buffer = (_buffer << 6) | decode(c.charCodeAt(0) ); + _buflen += 6; + } + + var n = (_buffer >>> (_buflen - 8) ) & 0xff; + _buflen -= 8; + return n; + }; + + var decode = function(c) { + if (0x41 <= c && c <= 0x5a) { + return c - 0x41; + } else if (0x61 <= c && c <= 0x7a) { + return c - 0x61 + 26; + } else if (0x30 <= c && c <= 0x39) { + return c - 0x30 + 52; + } else if (c == 0x2b) { + return 62; + } else if (c == 0x2f) { + return 63; + } else { + throw 'c:' + c; + } + }; + + return _this; + }; + + //--------------------------------------------------------------------- + // gifImage (B/W) + //--------------------------------------------------------------------- + + var gifImage = function(width, height) { + + var _width = width; + var _height = height; + var _data = new Array(width * height); + + var _this = {}; + + _this.setPixel = function(x, y, pixel) { + _data[y * _width + x] = pixel; + }; + + _this.write = function(out) { + + //--------------------------------- + // GIF Signature + + out.writeString('GIF87a'); + + //--------------------------------- + // Screen Descriptor + + out.writeShort(_width); + out.writeShort(_height); + + out.writeByte(0x80); // 2bit + out.writeByte(0); + out.writeByte(0); + + //--------------------------------- + // Global Color Map + + // black + out.writeByte(0x00); + out.writeByte(0x00); + out.writeByte(0x00); + + // white + out.writeByte(0xff); + out.writeByte(0xff); + out.writeByte(0xff); + + //--------------------------------- + // Image Descriptor + + out.writeString(','); + out.writeShort(0); + out.writeShort(0); + out.writeShort(_width); + out.writeShort(_height); + out.writeByte(0); + + //--------------------------------- + // Local Color Map + + //--------------------------------- + // Raster Data + + var lzwMinCodeSize = 2; + var raster = getLZWRaster(lzwMinCodeSize); + + out.writeByte(lzwMinCodeSize); + + var offset = 0; + + while (raster.length - offset > 255) { + out.writeByte(255); + out.writeBytes(raster, offset, 255); + offset += 255; + } + + out.writeByte(raster.length - offset); + out.writeBytes(raster, offset, raster.length - offset); + out.writeByte(0x00); + + //--------------------------------- + // GIF Terminator + out.writeString(';'); + }; + + var bitOutputStream = function(out) { + + var _out = out; + var _bitLength = 0; + var _bitBuffer = 0; + + var _this = {}; + + _this.write = function(data, length) { + + if ( (data >>> length) != 0) { + throw 'length over'; + } + + while (_bitLength + length >= 8) { + _out.writeByte(0xff & ( (data << _bitLength) | _bitBuffer) ); + length -= (8 - _bitLength); + data >>>= (8 - _bitLength); + _bitBuffer = 0; + _bitLength = 0; + } + + _bitBuffer = (data << _bitLength) | _bitBuffer; + _bitLength = _bitLength + length; + }; + + _this.flush = function() { + if (_bitLength > 0) { + _out.writeByte(_bitBuffer); + } + }; + + return _this; + }; + + var getLZWRaster = function(lzwMinCodeSize) { + + var clearCode = 1 << lzwMinCodeSize; + var endCode = (1 << lzwMinCodeSize) + 1; + var bitLength = lzwMinCodeSize + 1; + + // Setup LZWTable + var table = lzwTable(); + + for (var i = 0; i < clearCode; i += 1) { + table.add(String.fromCharCode(i) ); + } + table.add(String.fromCharCode(clearCode) ); + table.add(String.fromCharCode(endCode) ); + + var byteOut = byteArrayOutputStream(); + var bitOut = bitOutputStream(byteOut); + + // clear code + bitOut.write(clearCode, bitLength); + + var dataIndex = 0; + + var s = String.fromCharCode(_data[dataIndex]); + dataIndex += 1; + + while (dataIndex < _data.length) { + + var c = String.fromCharCode(_data[dataIndex]); + dataIndex += 1; + + if (table.contains(s + c) ) { + + s = s + c; + + } else { + + bitOut.write(table.indexOf(s), bitLength); + + if (table.size() < 0xfff) { + + if (table.size() == (1 << bitLength) ) { + bitLength += 1; + } + + table.add(s + c); + } + + s = c; + } + } + + bitOut.write(table.indexOf(s), bitLength); + + // end code + bitOut.write(endCode, bitLength); + + bitOut.flush(); + + return byteOut.toByteArray(); + }; + + var lzwTable = function() { + + var _map = {}; + var _size = 0; + + var _this = {}; + + _this.add = function(key) { + if (_this.contains(key) ) { + throw 'dup key:' + key; + } + _map[key] = _size; + _size += 1; + }; + + _this.size = function() { + return _size; + }; + + _this.indexOf = function(key) { + return _map[key]; + }; + + _this.contains = function(key) { + return typeof _map[key] != 'undefined'; + }; + + return _this; + }; + + return _this; + }; + + var createDataURL = function(width, height, getPixel) { + var gif = gifImage(width, height); + for (var y = 0; y < height; y += 1) { + for (var x = 0; x < width; x += 1) { + gif.setPixel(x, y, getPixel(x, y) ); + } + } + + var b = byteArrayOutputStream(); + gif.write(b); + + var base64 = base64EncodeOutputStream(); + var bytes = b.toByteArray(); + for (var i = 0; i < bytes.length; i += 1) { + base64.writeByte(bytes[i]); + } + base64.flush(); + + return 'data:image/gif;base64,' + base64; + }; + + //--------------------------------------------------------------------- + // returns qrcode function. + + return qrcode; +}(); + +// multibyte support +!function() { + + qrcode.stringToBytesFuncs['UTF-8'] = function(s) { + // http://stackoverflow.com/questions/18729405/how-to-convert-utf8-string-to-byte-array + function toUTF8Array(str) { + var utf8 = []; + for (var i=0; i < str.length; i++) { + var charcode = str.charCodeAt(i); + if (charcode < 0x80) utf8.push(charcode); + else if (charcode < 0x800) { + utf8.push(0xc0 | (charcode >> 6), + 0x80 | (charcode & 0x3f)); + } + else if (charcode < 0xd800 || charcode >= 0xe000) { + utf8.push(0xe0 | (charcode >> 12), + 0x80 | ((charcode>>6) & 0x3f), + 0x80 | (charcode & 0x3f)); + } + // surrogate pair + else { + i++; + // UTF-16 encodes 0x10000-0x10FFFF by + // subtracting 0x10000 and splitting the + // 20 bits of 0x0-0xFFFFF into two halves + charcode = 0x10000 + (((charcode & 0x3ff)<<10) + | (str.charCodeAt(i) & 0x3ff)); + utf8.push(0xf0 | (charcode >>18), + 0x80 | ((charcode>>12) & 0x3f), + 0x80 | ((charcode>>6) & 0x3f), + 0x80 | (charcode & 0x3f)); + } + } + return utf8; + } + return toUTF8Array(s); + }; + +}(); + +(function (factory) { + if (typeof define === 'function' && define.amd) { + define([], factory); + } else if (typeof exports === 'object') { + module.exports = factory(); + } +}(function () { + return qrcode; +})); diff --git a/image-recipe/configs/nginx-archipelago.conf b/image-recipe/configs/nginx-archipelago.conf index 103f0eea..177306f2 100644 --- a/image-recipe/configs/nginx-archipelago.conf +++ b/image-recipe/configs/nginx-archipelago.conf @@ -144,6 +144,13 @@ server { # CORS handled by backend } + location /lnd-connect-info { + proxy_pass http://127.0.0.1:5678/lnd-connect-info; + proxy_http_version 1.1; + proxy_set_header Host $host; + add_header Access-Control-Allow-Origin *; + } + # Content sharing — peer access over Tor (no auth) location /content { proxy_pass http://127.0.0.1:5678; @@ -756,6 +763,13 @@ server { # CORS handled by backend } + location /lnd-connect-info { + proxy_pass http://127.0.0.1:5678/lnd-connect-info; + proxy_http_version 1.1; + proxy_set_header Host $host; + add_header Access-Control-Allow-Origin *; + } + # Content sharing — peer access over Tor (no auth) location /content { proxy_pass http://127.0.0.1:5678; diff --git a/indeedhub-demo/Dockerfile b/indeedhub-demo/Dockerfile index 5bb0ebb8..b5051462 100644 --- a/indeedhub-demo/Dockerfile +++ b/indeedhub-demo/Dockerfile @@ -3,7 +3,7 @@ FROM node:20-alpine AS builder RUN apk add --no-cache git WORKDIR /app -RUN git clone --depth 1 https://git.tx1138.com/lfg2025/indeehub.git . +RUN git clone --depth 1 https://github.com/Zazawowow/indeehub-archipelago.git . RUN npm ci ENV VITE_USE_MOCK_DATA=false ENV VITE_INDEEHUB_API_URL=/api diff --git a/loop/plan.md b/loop/plan.md index 5860a711..03ff5ee1 100644 --- a/loop/plan.md +++ b/loop/plan.md @@ -28,7 +28,35 @@ --- -## Phase 3: Fix Iframe Embedding for All Apps +## Phase 3: Fix App Launching — Use Direct IP:Port URLs + +- [ ] **Fix AppSession.vue — use direct IP:port URLs instead of nginx proxy paths**: The root cause of most iframe issues is `AppSession.vue` lines 240-276. The `APP_URLS` map hardcodes every app to `/app/{id}/` nginx subpath proxies (e.g., `'/app/filebrowser/'`). This breaks apps because root-relative asset paths (like `/static/main.js`) resolve to the Archy root instead of the app. The fix: replace the hardcoded proxy paths with direct `IP:port` URLs. Change `APP_URLS` to map app IDs to their actual ports instead: + + ```typescript + const APP_PORTS: Record = { + 'bitcoin-knots': 8334, 'electrs': 50002, 'btcpay-server': 23000, + 'lnd': 8081, 'mempool': 4080, 'homeassistant': 8123, 'grafana': 3000, + 'searxng': 8888, 'ollama': 11434, 'onlyoffice': 9980, 'penpot': 9001, + 'nextcloud': 8085, 'vaultwarden': 8082, 'jellyfin': 8096, + 'photoprism': 2342, 'immich': 2283, 'filebrowser': 8083, + 'nginx-proxy-manager': 81, 'portainer': 9000, 'uptime-kuma': 3001, + 'tailscale': 8240, 'fedimint': 8175, 'nostr-rs-relay': 18081, + 'indeedhub': 7777, 'dwn': 3100, 'endurain': 8080, + } + ``` + + Then compute the URL dynamically in `appUrl`: + - **On HTTP**: `http://${window.location.hostname}:${port}` (direct, no proxy, assets work perfectly) + - **On HTTPS**: `${window.location.origin}/app/${appId}/` (proxy needed to avoid mixed-content blocks) + - **External sites**: keep direct HTTPS URLs as-is (botfights, nwnn, etc.) + + This matches what `appLauncher.ts` `toEmbeddableUrl()` already does (lines 70-96) but `AppSession.vue` was bypassing it. Keep the nginx proxy locations for HTTPS — they're still needed there. The `PORT_TO_PROXY` map in `appLauncher.ts` should also be updated to use the same `APP_PORTS` source of truth (import it, or move to a shared `src/data/appPorts.ts`). Run `cd neode-ui && npm run type-check`. + +- [ ] **For apps that block iframes — still open in new tab at IP:port**: Update `mustOpenInNewTab()` in `appLauncher.ts` to check against `APP_PORTS` rather than hardcoded port strings. In `AppSession.vue`, add the same check: if `mustOpenInNewTab(url)`, redirect to `window.open(url, '_blank')` instead of loading in iframe. The blocked apps (BTCPay 23000, Grafana 3000, Vaultwarden 8082, PhotoPrism 2342, Nextcloud 8085, Uptime Kuma 3001, Home Assistant 8123) should open at `http://192.168.1.228:{port}` in a new tab. Verify each blocked app actually needs blocking by checking headers: `ssh archipelago@192.168.1.228 'for port in 23000 3000 8082 2342 8085 3001 8123; do echo "Port $port:"; curl -sI http://localhost:$port/ | grep -i "x-frame"; done'`. Remove from blocked list if nginx `proxy_hide_header X-Frame-Options` is stripping the header successfully (in which case they CAN iframe). + +- [ ] **Remove unnecessary nginx sub_filter path rewriting**: With direct `IP:port` URLs on HTTP, the `sub_filter` rules in `image-recipe/configs/nginx-archipelago.conf` that rewrite asset paths (e.g., IndeedHub lines 334-367) are no longer needed for HTTP. Keep them for HTTPS proxy paths only. Review each `/app/{id}/` location block — the `proxy_hide_header X-Frame-Options` and `proxy_pass` are still needed for HTTPS, but `sub_filter` rules that rewrite `/static/` or `/_next/` paths are only needed in HTTPS mode. This simplifies the nginx config significantly. Test: load each app at `http://192.168.1.228:{port}` directly in a browser — all assets should load without any nginx intervention. + +- [ ] **Inject nostr-provider.js for IndeedHub at IP:port**: When apps load at direct `IP:port` URLs (not through nginx proxy), nginx can't inject `nostr-provider.js` via `sub_filter`. Instead, the `AppSession.vue` iframe wrapper must inject it. In `AppSession.vue`, after the iframe loads, use `iframe.contentWindow.postMessage` to send a script injection request, OR — simpler — add a ` + + + +